Autofiltre

Résolu/Fermé
Villette54 Messages postés 300 Date d'inscription vendredi 15 mars 2013 Statut Membre Dernière intervention 31 juillet 2018 - 19 juil. 2013 à 14:58
Villette54 Messages postés 300 Date d'inscription vendredi 15 mars 2013 Statut Membre Dernière intervention 31 juillet 2018 - 31 juil. 2013 à 14:50
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.

2 réponses

f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
19 juil. 2013 à 15:28
Bonjour,

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
0
Villette54 Messages postés 300 Date d'inscription vendredi 15 mars 2013 Statut Membre Dernière intervention 31 juillet 2018 28
22 juil. 2013 à 10:22
Bonjour,

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
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
22 juil. 2013 à 11:27
Bonjour,

Sauf erreur de ma part, un filtre ne fait pas de tri par ordre alphabetique!!!!
0
Villette54 Messages postés 300 Date d'inscription vendredi 15 mars 2013 Statut Membre Dernière intervention 31 juillet 2018 28
22 juil. 2013 à 13:50
Je me suis mal exprimé, oubli le filtre

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.
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
22 juil. 2013 à 14:24
Re,

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+
0
Villette54 Messages postés 300 Date d'inscription vendredi 15 mars 2013 Statut Membre Dernière intervention 31 juillet 2018 28
22 juil. 2013 à 16:20
Re,

A première vue ça semble correspondre.
Je ne peux pas l'essayer aujourd'hui, je te tiens au courant dès demain matin

En attendant merci, et bonne fin de journée.
0
Villette54 Messages postés 300 Date d'inscription vendredi 15 mars 2013 Statut Membre Dernière intervention 31 juillet 2018 28
31 juil. 2013 à 14:50
Bonjour,

Désolé de ne répondre que maintenant.

Cette solution ne s'avère pas être la plus efficace je crains (une fois la macro activée, mes formules ne fonctionnent plus) je vais chercher une solution alternative.

En tout cas, je te remercie pour ton implication.

Bonne journée
0