EXCEL Macro autoclose annulation filtres automatiques
Résolumounapo Messages postés 65 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un tableau de données EXCEL et chaque colonne peut être triée à l'aide de filtres automatiques.
Je souhaiterai qu'à l'aide d'une macro AUTO CLOSE, les critères de tous les filtres automatiques s'annulent et que toutes mes données s'affichent à la prochaine ouverture de mon fichier tout en gardant la possibilité d'utiliser les filtres.
J'espère avoir été claire ;)
J'attends vos retours ! Merci d'avance !
- EXCEL Macro autoclose annulation filtres automatiques
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
13 réponses
Bonjour,
Perso, plutôt que de jouer avec l'évènement "Before_Close", j'utiliserais l'évènement "Open"...
Ainsi, à l'ouverture, tous les filtres sont désactivés.
Dans l'évènement "This_Worbook", mettre ce code (je suppose qu'il n'y a qu'un onglet)
Private Sub Workbook_Open()
With Sheets(1)
If .FilterMode Then .ShowAllData
End With
End Sub
Ce code vérifie si au moins un filtre est actif, auquel cas il désactive tous les filtres...
Et tu as toutes tes données à l'ouverture (sous condition expresse d'autoriser les macros, mais cette obligation vaudrait également pour un code "Before_Close")
Bonne apm
J'ai déjà une macro auto open qui se présente ainsi :
Sub Auto_Open()
Sheets("Liste clés").Select
Range("A1").Select
End Sub
Comment puis-je intégrer ta formule pour que les filtres de cette feuille soient désactivés ?
Re-,
Ouh là, on n'utilise plus ce type de code (auto_open) depuis.....(longtemps....)
Tu peux effacer ce code, puis, lorsque tu es dans l'éditeur VBA, tu cliques sur l'icône "ThisWorkbook" (en haut à gauche, sous les noms des Feuil)
Dans la fenêtre de droite, tu cliques sur le 1er bandeau déroulant, et tu sélectionnes "Worbook", et dans le 2ème (plus à droite), "Open".
Puis tu mets ce code :
Private Sub Workbook_Open()
With Sheets("Liste clés")
.Select
If .FilterMode Then .ShowAllData
End With
End Sub
Bon courage
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionRebonjour ;)
Pouvez-vous m'indiquer maintenant comment supprimer les critères de filtre automatique pour toutes les feuilles ou alors pour la première feuille (car le nom de la feuille va changer régulièrement) ?
Merci
Bonjour,
En modifiant ainsi, toujours dans l'évènement du ThisWorkbook :
Private Sub Workbook_Open()
Dim Sh As Worksheet
For Each Sh In Sheets
With Sh
If .FilterMode Then .ShowAllData
End With
Next Sh
End Sub
Bonne journée
Re-,
Pour la première,
Private Sub Workbook_Open()
With Sheets(1)
.Select 'si tu veux activer cet onglet
If .FilterMode Then .ShowAllData
End With
End Sub
Re-,
Si ça fonctionnait avec le premier code fourni, je ne vois pas pourquoi ça ne fonctionnerait pas avec les autres...
Est-ce que tu utilises plusieurs tableaux dans ton onglet?
Bonjour,
J'ai réussi ! En fait j'avais ajouté une protection sur la feuille qui empêchait l'accès aux filtres.
Autre petite demande : avez-vous une macro pour se déplacer automatiquement en colonne B sur la première ligne vierge de mon tableau ?