Autofiltre
Résolu
Villette54
Messages postés
300
Date d'inscription
Statut
Membre
Dernière intervention
-
Villette54 Messages postés 300 Date d'inscription Statut Membre Dernière intervention -
Villette54 Messages postés 300 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis novice et VBA et j'aimerais implanter une macro afin de gagner un peu de temps.
Enfaîte j'ai des infos dans ma colonnes A qui sont rentrées de façon aléatoire.
J'aimerais que lorsque je clique sur un bouton (que j'ai créé) ma macro s'active et :
1. Mette en place un filtre sur la case A6
2. Tri la colonne de A --> Z (de la ligne 7 à 43)
3. Supprime le filtre mis en place à l'étape 1
Merci d'avance.
Je suis novice et VBA et j'aimerais implanter une macro afin de gagner un peu de temps.
Enfaîte j'ai des infos dans ma colonnes A qui sont rentrées de façon aléatoire.
J'aimerais que lorsque je clique sur un bouton (que j'ai créé) ma macro s'active et :
1. Mette en place un filtre sur la case A6
2. Tri la colonne de A --> Z (de la ligne 7 à 43)
3. Supprime le filtre mis en place à l'étape 1
Merci d'avance.
2 réponses
Bonjour,
Pas besoin de filtre, un simple tri ira tres bien:
fait avec l'enregistreur de macro
Bonne suite
Pas besoin de filtre, un simple tri ira tres bien:
fait avec l'enregistreur de macro
Sub Macro1() ' ' Macro1 Macro ' ' Range("A7:A43").Select ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Clear ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Add Key:=Range("A6"), _ SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal With ActiveWorkbook.Worksheets("Feuil1").Sort .SetRange Range("A7:A43") .Header = xlNo .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End Sub
Bonne suite
Re,
A+
Sub Macro1() ' ' Macro1 Macro ' Dim table 'mise en memoire des valeurs d'origines table = Worksheets("Feuil1").Range("A7:A43") 'code tri Range("A7:A43").Select ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Clear ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Add Key:=Range("A6"), _ SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal With ActiveWorkbook.Worksheets("Feuil1").Sort .SetRange Range("A7:A43") .Header = xlNo .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With 'Reecriture cellules d'origines Worksheets("Feuil1").Range("A7") = Application.Transpose(table) End Sub
A+
Déjà merci pour ton aide,
Effectivement je n'avais pas pensé à l'enregistreur de macro.
Cela fonctionne pour le tri en revanche, cela ne "rétabli" pas comme à l'origine après le filtre.
J'explique : Je souhaite que le tri s'applique (puis ma macro exporte le fichier en PDF avec la ligne triées par ordre alphabétique) et une fois que le fichier à été exporté j'aimerais que le tri s'annule (l'enregistreur ne prend pas en compte Ctrl+Z). Il faut que cela s'annule pour des correspondances de formule.
Merci d'avance
Sauf erreur de ma part, un filtre ne fait pas de tri par ordre alphabetique!!!!
La seule chose dont j'ai besoin c'est d'une macro capable de m'appliquer un tri A --> Z, (effectuer d'autres actions mais cette partie est OK) et après d'annuler le tri.