Rafraichir filtre automatiquement en activant une feuille

Fermé
Mrauth Messages postés 1 Date d'inscription jeudi 4 août 2016 Statut Membre Dernière intervention 4 août 2016 - 4 août 2016 à 15:08
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 - 4 août 2016 à 15:44
Bonjour à tous,

Je n'ai jamais fait de macro, je sais juste que pour y accéder je dois faire Alt F11... Je suis donc au tout début :-)

J'ai un filtre sur une des feuilles, que je dois faire manuellement. Est-il possible que ce filtre se rafraichisse automatiquement lorsque j'ouvre cette feuille?

Existe t-il une macro que je pourrais copier/coller dans ce module? Jusqu'ici j'ai trouvé une info sur un forum :"ActiveSheet.AutoFilter.ApplyFilter", mais je n'ai aucune idée de ce que je dois en faire...

Merci pour votre aide
A voir également:

1 réponse

via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
4 août 2016 à 15:44
Bonjour

Utilises l'enregistreur de macro pour obtenir la macro de ton filtre :

En étant placé dans ta feuille dans le ruban tu vas dans Developpeur et Enregistrer une macro puis tu effectue manuellement ton filtre et tu arrêtes l'enregistrement

Ensuite avec ALT+F11 tu ouvres l'éditeur VBA et dans le Module 1 tu dois trouvé ta macro enregistrée, quelque chose comme ceci :
Sub Macro1()

ActiveSheet.Range("$A$7:$GD$34").AutoFilter Field:=2, Criteria1:="F"
  
End Sub


Ensuite pour faire appliquer le filtre à chaque ouverture du fichier tu copies les lignes de ta macro
dans l'arborescence à gauche tu double clic sur This workbook puis à la place de Général tu selectionnes Workbook, tu as alors affiché :
Private Sub Workbook_Open()

End Sub


Tu colles tes lignes de macro à l'intérieur de cette Sub puis tu remplaces la ActiveSheet (feuille active) par Sheets(le nom de ta feuille entre "")

Au final tu as quelque chose comme :
Private Sub Workbook_Open()
Sheets("Feuil1").Range("$A$7:$GD$34").AutoFilter Field:=2, Criteria1:="F"
End Sub


Cdlmnt
Via
3