Masquage automatique des lignes

Bonjour,

j'ai un tableau filtré par colonne.

Quand je remplis une ligne, selon des formules, il m'écrit dans une colonne un statut de dossier qui peut être:

"EN COURS"

"DOSSIER CLOS"

J'utilise le filtre pour ne faire apparaître que les "EN COURS"

Quand je saisis une ligne, elle reste en "DOSSIER CLOS" tant que je n'ai pas été manipulé le filtre.

Je me demandais s'il existait une possibilité d'automatiser le filtre pour que la ligne se masque dès que le statut est "DOSSIER CLOS" ?

Merci.

Bonsoir,

Il faut le fichier pour effectuer un test.

bonjour,

Ok je joins mon fichier simplifié et modifié pour cacher les données pro mais il y a quelques lignes pour faire les tests.

Ce que j'aimerai c'es peut-être créer un bouton qui permette en cliquant dessus de cacher les lignes dont le statut est "DOSSIER CLOS" puis de recliquer dessus pour afficher toutes les lignes.

Merci.


bonjour,

Ok je joins mon fichier simplifié et modifié pour cacher les données pro mais il y a quelques lignes pour faire les tests.

Ce que j'aimerai c'es peut-être créer un bouton qui permette en cliquant dessus de cacher les lignes dont le statut est "DOSSIER CLOS" puis de recliquer dessus pour afficher toutes les lignes.

Merci.

10test-bouton.xlsx (16.84 Ko)
9test-bouton.xlsx (16.84 Ko)

Bonjour et bonne année,

Un première proposition à étudier.

* j'ai supprimé la colonne M à priori inutile...

Cdlt.

Option Explicit
'-----------------------------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)

    If Not Intersect(Target, Range("L:L,O:O")) Is Nothing Then

        If Target.Row < 9 And Target.Count > 1 Then Exit Sub

        If Not Me.AutoFilterMode Then
            Me.Range("A8").AutoFilter
        End If

        Me.Range("A8").CurrentRegion.AutoFilter _
                field:=16, _
                Criteria1:="<>DOSSIER CLOS"

    End If

End Sub
'-----------------------------------------------------------------
Private Sub cmdRAZ_Click()

    Me.Range("A8").CurrentRegion.AutoFilter field:=16

End Sub

Bonjour Jean-Eric,

Merci pour ta proposition. Je suis telement débutant que je ne sais pas quoi faire.

J'ai ouvert ton fichier mais quand je clique sur le bouton,il apparait 9 plots autour pour le redimensionner, je n'arrive pas à l'utiliser comme un bouton.

J'ai ouvert mon excel et j'ai crée un bouton où j'ai mis ta procédure mais il me dit "erreur de compilation - Instruction incorrecte dans une procédure".

Peux-tu m'aider ?

Merci.

RE,

Si une cellule est modifiée en colonne L ou colonne O, le filtre est actualisé, en fonction de la valeur calculée en colonne P.

Le bouton RAZ efface le filtre en cours.

Cdlt.

Bonjour Jean-Eric,

Encore désolé mais je n'arrive pas à utiliser ta proposition.

Je modifie L ou O pour changer la valeur de P mais malgré cela la ligne ne se masque pas quand "DOSSIER CLOS".

Aussi je n'arrive pas à utliser le bouton RAZ, à part pour l'agrandir grâce aux 9 plots l'entourant, mais impossible d'appuyer dessus.

Est-ce un problème de paramétrage de mon excel ?

Merci.

Bonjour,

Assure toi que les macros soient activées et que le mode création (menu Développeur) est désactivé.

Cdlt.

Salut Jean-Eric,

Dis-donc .... c'est dur d'être un noob ... je m'en veux.

Alors oui, en activant les macro dans les options et en enlevant le mode création ca marche beaucoup mieux.

Ensuite j'ai essayé de transférer cela dans mon tableau car celui-ci était un "réduit" pour ne pas afficher les données pro.

Mais j'ai galéré 30 min entre le code dans l'onglet et dans le bouton qui ne voulaient pas marcher.

Au final après avoir renommé le nom du bouton etc ca fonctionne ... j'y connais rien en macro c'est ma 1ere on peut dire.

En tout cas, merci beaucoup, ça fonctionne.

PS : est-il possible de ne pas masquer automatiquement ? (de ne masquer qu'en cliquant sur le bouton marquant alors "voulez vous masquer les dossiers clos ?" et quand on est en mode masqué d'avoir écrit "voulez-vous afficher tous les dossiers?"

Merci.

Bonjour,

Une nouvelle proposition à tester.

Cdlt.

Option Explicit

Private Sub cmdFilter_Click()

    Application.ScreenUpdating = False

    If cmdFilter.Caption = "Masquer les dossiers clos" Then
        Me.Range("A8").CurrentRegion.AutoFilter _
                field:=16, _
                Criteria1:="<>DOSSIER CLOS"
        cmdFilter.Caption = "Afficher tous les dossiers"
    Else
        Me.Range("A8").CurrentRegion.AutoFilter _
                field:=16
        cmdFilter.Caption = "Masquer les dossiers clos"
    End If

End Sub

Salut Jean-Eric,

je me repenche sur le problème aujourd'hui seulement, j'ai pu copier-coller ton bouton et code et ça fonctionne aussi.

cette méthode afficher/masquer est vraiment pratique.

Impeccable !

Merci encore.

Bonjour,

Pas de quoi et reviens quand tu veux.

Cdlt.

Rechercher des sujets similaires à "masquage automatique lignes"