ThauThème a écrit :
Bonjour le fil, bonjour le forum,
Ou comme ça :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim PL As Range
Application.ScreenUpdating = False
Set PL = Sheets("Feuil2").Range("C4:C" & Sheets("Feuil2").Range("C" & Application.Rows.Count).End(xlUp).Row)
If Sheets("Feuil2").FilterMode = True Then PL.AutoFilter
If Not Application.Intersect(Target, Range("E8")) Is Nothing Then 'E8 la ou se trouve la liste déroulante
If Target.Value = "sans filtre" Then
If FilterMode = True Then PL.AutoFilter
Else
PL.AutoFilter Field:=1, Criteria1:="*" & Target.Value & "*"
End If
Sheets("Feuil2").Activate
End If
Application.ScreenUpdating = True
End Sub
Re Bonjour les masters !
La deuxième solution marche comme j'ai imaginé le fichier au début ... Rien que pour quelques valeurs de la liste déroulante le filtre ne s'applique pas sur la première ligne du tableau mais s'applique parfois dans la 2em 3em ou 4 em ligne ...
Merci de vos retours !
minanse a écrit :
Bonjour,
Le code est à remplacer dans la boucle "for" :
remplace le "if target.valet <>.... then > par ce code
Merci Chef c'est trés gentil de votre part !
minanse a écrit :
Bonjour,
Le code est à remplacer dans la boucle "for" :
remplace le "if target.valet <>.... then > par ce code
Merci Chef c'est trés gentil de votre part !