Tri ordre alphabétique
Résolu
Melycea
-
Melycea -
Melycea -
Bonjour à toutes et à tous,
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 :
Merci de votre aide.
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
Merci de votre aide.
A voir également:
- Notepad++ trier par ordre alphabetique
- Comment trier par ordre alphabétique sur excel - Guide
- Telecharger notepad++ - Télécharger - Édition & Programmation
- Classer les applications par ordre alphabétique iphone - Guide
- Finale notepad - Télécharger - Outils professionnels
- Triez ce tableau par ordre alphabétique des prénoms. ✓ - Forum Excel