Sub Macro1()
Dim dico As Object 'déclare la variable dico
Dim pl As Range 'décalre la variable pl
Dim cel As Range 'décalre la variable cel
Dim tbl As Variant 'décalre la variable tbl
Dim x As Integer 'déclare la variable x
Set dico = CreateObject("Scripting.Dictionary") 'définit la variable dico
With Sheets("Feuil1") 'prend en compte l'onglet "Feuil1"
Set pl = .Range("A12:A" & .Cells(Application.Rows.Count, 1).End(xlUp).Row) 'définit la plage pl
End With 'fin de la prise en compte de ...
For Each cel In pl 'boucle sur toutes les cellules cel de la plage pl
dico(cel.Value) = "" 'alimente le dico
Next cel 'prochaine cellule de la plage
tbl = dico.keys 'récupère les données de la plage sans doublons
With Sheets("Feuil2") 'prend en compte l'onglet "Feuil2")
For x = 0 To UBound(tbl, 1) 'boucle sur tous les éléments du tableau tbl
'place dans la colonne G (à partir de la ligne 12...à adapter) le nombre de fois que l'élément apparaît dans la plage pl suivit d'un espace et suivi de la valeur de l'élément
.Range("G12").Offset(x, 0).Value = Application.WorksheetFunction.CountIf(pl, tbl(x)) & " " & tbl(x)
Next x 'prochain élément de la boucle
End With 'fin de al prise en compte de ...
End Sub