EXCEL Macro autoclose annulation filtres automatiques

Résolu
mounapo Messages postés 70 Statut Membre -  
mounapo Messages postés 70 Statut Membre -

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 !

13 réponses

  1. cousinhub29 Messages postés 1112 Date d'inscription   Statut Membre Dernière intervention   383
     

    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


    0
  2. mounapo Messages postés 70 Statut Membre 1
     

    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 ?

    0
  3. cousinhub29 Messages postés 1112 Date d'inscription   Statut Membre Dernière intervention   383
     

    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


    0
  4. mounapo Messages postés 70 Statut Membre 1
     

    Super ! Ca fonctionne ;)

    Merci beaucoup et bonne fin de journée !

    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. mounapo Messages postés 70 Statut Membre 1
     

    Rebonjour ;)

    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

    0
  7. cousinhub29 Messages postés 1112 Date d'inscription   Statut Membre Dernière intervention   383
     

    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


    0
  8. mounapo Messages postés 70 Statut Membre 1
     

    Merci et la formule pour la première feuille seulement ?

    0
  9. cousinhub29 Messages postés 1112 Date d'inscription   Statut Membre Dernière intervention   383
     

    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

    0
  10. mounapo Messages postés 70 Statut Membre 1
     

    J'ai essayé les deux formules aucune ne fonctionne : mon filtre reste activé ! 

    0
  11. cousinhub29 Messages postés 1112 Date d'inscription   Statut Membre Dernière intervention   383
     

    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?


    0
  12. mounapo Messages postés 70 Statut Membre 1
     

    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 ?

    0
  13. cousinhub29 Messages postés 1112 Date d'inscription   Statut Membre Dernière intervention   383
     

    Bonjour,

    Logiquement, 1 fil = 1 question...

    Dans ta future question, précise si ce sont des Tableaux Structurés ou non, et sur quel onglet se positionner...

    Bonne apm


    0
  14. mounapo Messages postés 70 Statut Membre 1
     

    Très bien, en tout cas merci beaucoup pour votre aide et belle fin de journée !

    0