J'ai créé une macro qui répertorie grace à un dictionnaire toutes les valeurs de la colonne 10 de ma feuille 1 et calcule les occurences de chacune.
Ensuite, elle écrit toutes ces données dans la feuille 4 du même fichier.
Mais je voudrai qu'elle écrive ces données par odre alphabétique, seulement je ne sais pas du tout comment faire étant donné que le dictionnaire n'est que "virtuel".
Voici le code de ma macro actuelle :
Sub Bouton1_Clic()
Dim FinTab As Integer, Valeur As String, DerLig As Integer, Dico As Object, _ element As Variant, Somme As Integer
DerLig = ActiveWorkbook.Sheets(1).Range("A65536").End(xlUp).Row 'dernière _ ligne de la Wire List
FinTab = ActiveWorkbook.ActiveSheet.Range("B65536").End(xlUp).Row 'dernière _ ligne de la Part List précédente
' Création du dictionnaire
Set Dico = CreateObject("Scripting.Dictionary")
' Mise à zéro du dictionnaire
For Each element In Dico
Remove.Dico (element)
Next element
' Effacement de la Liste précédente (s'il y en avait une)
If FinTab <> 2 Then
For i = 2 To 3
For j = 3 To FinTab
Cells(j, i) = ""
Cells(j, i).Borders.LineStyle = xlNone
Next j
Next i
End If
' Remplissage du dictionnaire avec Key=Valeur et Item=occurences
For i = 3 To DerLig
Valeur = ActiveWorkbook.Sheets(1).Cells(i, 10)
If Dico.exists(Valeur) And Valeur <> "" Then
Dico.IteM(Valeur) = Dico.IteM(Valeur) + 1
ElseIf Valeur <> "" Then
Dico.Add Valeur, 1
End If
Next i
' Remplissage "physique" de la Liste
i = 3
For Each element In Dico
Cells(i, 2) = element
Cells(i, 3) = Dico.IteM(element)
Somme = Somme + Dico.IteM(element) ' calcul du total
i = i + 1
Next element
' Remplissage du total
Cells(i, 2) = "Total"
Cells(i, 3) = Somme
End Sub
Discussions sur les outils et logiciels de bureautique. Trouvez des solutions à vos problèmes, apprenez des astuces pour maximiser votre productivité et connectez-vous avec une communauté dédiée à l'efficacité au travail.