Macro pour filtrer puis défiltrer ne fonctionne pas

  • Initiateur de la discussion Initiateur de la discussion chris6999
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

chris6999

XLDnaute Impliqué
Bonjour

J'ai dans le fichier joint une macro pour filtrer sur une valeur saisie dans la cellule D5.
Ce filtre fonctionne par contre lorsque je supprime la valeur dans cette cellule, le filtre reste actif au lieu d'afficher toutes les lignes.
Je viens de me rendre compte que c'est à cause de la fusion de D5 et E5...
Comment puis-je contourner ce problème.
Merci d'avance
Cordialement


Private Sub Worksheet_Change(ByVal Target As Range)
With Sheets("Suivi priorités")
' Si modification de la cellule D5 : cellule où on saisit la valeur recherchée
If Target.Address(0, 0) = "D5" Then
' Si la cellule contient une valeur
If Target.Value <> "" Then
' Filter sur cette valeur
'A11:j11 ligne où se trouvent les étiquettes du filtre
Range("A11:J11").AutoFilter Field:=2, Criteria1:="=*" & Target.Value & "*"
'Field = 2 : recherché de la valeur dans la colonne 2
Else
' Supprimer le filtre
Range("A11:j11").AutoFilter Field:=2
End If
End If
End With
End Sub
 

Pièces jointes

Dernière édition:
Re : Macro pour filtrer puis défiltrer ne fonctionne pas

Salut Chris6999 😉

Tu peux faire comme ça
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  With Sheets("Suivi priorités")
    ' Si modification de la cellule dans l'intersection D5:E5
    If Not Intersect(Target, Range("D5:E5")) Is Nothing Then
      ' Si la cellule contient une valeur
      If Range("D5").Value <> "" Then
        ' Filter sur cette valeur
        'A5:C5 ligne où se trouvent les étiquettes du filtre
        Range("A11:I11").AutoFilter Field:=2, Criteria1:="=*" & Target.Value & "*"
        'Field = 1 : recherché de la valeur dans la colonne 1
      Else
        ' Supprimer le filtre
        Range("A11:I11").AutoFilter Field:=2
      End If
    End If
  End With
End Sub

A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
18
Affichages
804
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
479
Réponses
4
Affichages
243
Retour