Filtre fixe à une cellule

Bonjour, je souhaite filtrer sur une colonne précise même si quelqu'un rajoute des colonnes en fonction du temps. Il faut que la macro reconnaisse la cellule de filtrage (ici N7 qui a pour nom "droit"). Le tout ce fait par un Togglebutton situé sur une autre page et je ne veux pas avoir accès à la feuille où le filtre à lieu.

Private Sub ToggleButton1_Click()

indicCol = 14
    With Worksheets("BASE STOCKAGE")
        Do While ActiveCell.Value <> droit
            indicCol = indicCol + 1
            ActiveCell.Offset(0, 1).Select
        Loop
        If ToggleButton1.Value Then
            Worksheets("BASE STOCKAGE").Range("$A$7:$FG$1193").AutoFilter Field:=indicCol, Criteria1:="<>"
        Else
            Worksheets("BASE STOCKAGE").Range("$A$7:$FG$1193").AutoFilter Field:=indicCol
        End If
    End With
End Sub

Actuellement le filtrage marche mais pas l'incrémentation lorsque l'on rajoute des colonnes. Le filtre reste sur la colonne 14.

Je vous remercie de l'aide que vous pourrez m'apporter. cordialement

bonjour

modifie cette instruction

 Do While ActiveCell.Value <> "droit"

Il cherche la colonne sur la mauvaise feuille, puis un message d'erreur d'exécution 1004.

je rajoute l'Excel ci-joint. merci de ton aide

12essais-macro.xlsm (73.16 Ko)

bnojour,

Private Sub ToggleButton1_Click()

    With Worksheets("BASE STOCKAGE")
        indicCol = 14
        Do While .Cells(7, indicCol) <> "droit"
            indicCol = indicCol + 1
        Loop
        If ToggleButton1.Value Then
            .Range("$A$7:$FG$1193").AutoFilter Field:=indicCol, Criteria1:="<>"
        Else
            .Range("$A$7:$FG$1193").AutoFilter Field:=indicCol
        End If
    End With
End Sub

Super merci beaucoup ça marche !

J'ai une dernière petite requête je souhaite remettre mes togglebutton (pour l'instant j'en ai que 1) en position initiale lorsque j'appuie sur RAZ.

Sub RAZ()

    With Worksheets("BASE STOCKAGE")
        If .FilterMode = True Then .ShowAllData

    End With
End Sub
Sub RAZ()
    togglebutton1.value=false
    With Worksheets("BASE STOCKAGE")
        If .FilterMode = True Then .ShowAllData

    End With
End Sub

j'avais déjà essayé cette manip :s mais j'ai erreur d'exécution '424' objet requis et je n'ai aucune idée comment faire appel au togglebutton

rebonjour,

worksheets("feuil1").togglebutton1.value=false

merci beaucoup tout fonctionne

Rechercher des sujets similaires à "filtre fixe"