Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2019 filtre avancée avec plusieurs critère "avec macro"

le___destin

XLDnaute Occasionnel
bonsoir,
j'aimerai faire un filtre d'un tableau suivant plusieurs critère
merci de m'aider a réaliser ce travail
 

Pièces jointes

  • benamor.xlsm
    70.9 KB · Affichages: 20

cp4

XLDnaute Barbatruc
bonsoir
le problème que le filtre entre deux date ne marche plus
Il faut respecter le nom des entêtes c'est pour cela que ça ne fonctionne pas.
Il mettre date pour les 2 cellules (A3 et B3) au lieu de jusqu'à date et à partir date.
Je t'ai envoyé ton fichier en retour, il faut faire un effort de compréhension.
Il faut insérer une ligne en ligne5, ensuite tu fais un clic-droit sur l'onglet "statistique" et colle le code ci-dessous
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A5")) Is Nothing Then
        Target.Offset(-1, 0) = ">=" & Target.Value2
    End If
    If Not Intersect(Target, Range("B5")) Is Nothing Then
        Target.Offset(-1, 0) = "<=" & Target.Value2
    End If
End Sub

Les dates doivent être saisies dans les cellules A5 et B5 (en A4 e B4 il y aura une formule)

A+
 
Dernière édition:

le___destin

XLDnaute Occasionnel
bonsoir les amis
avant tout, je vous remercie beaucoup pour vos aide
le code marche bien
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A5")) Is Nothing Then
    Sheets("statistique").Unprotect Password:="Destin0931"
        Target.Offset(-1, 0) = ">=" & Target.Value2
    End If
    If Not Intersect(Target, Range("B5")) Is Nothing Then
    Sheets("statistique").Unprotect Password:="Destin0931"
        Target.Offset(-1, 0) = "<=" & Target.Value2
        Sheets("statistique").Protect Password:="Destin0931"
    End If
End Sub
juste une petite chose, je veux que si j'efface les date du cellules A5 et B5 les cellule A4 et B4 sois vide qui ce n'est pas le cas
et merci
 

chris

XLDnaute Barbatruc
Bonjour

Ma réponse concernant la formule à modifier correspond à la solution que j'ai donnée au #18 et au fichier que j'y ai joint, pas à un mélange avec celle de cp4.

Elle ne nécessite pas de code au changement du choix des dates car ce sont les formules associées au filtre qui agissent.
 
Réactions: cp4

cp4

XLDnaute Barbatruc
Bonjour Chris, @le___destin ,

Je suis absolument d'accord avec Chris. D'ailleurs, je pense que tu ne sais pas vraiment ce que tu veux.
Mon dernier code à tester
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("A5")) Is Nothing Then
        If Target.Value <> "" Then
            Target.Offset(-1, 0) = ">=" & Target.Value2
        Else
            Target.Offset(-1, 0) = ""
        End If
    End If
    If Not Intersect(Target, Range("B5")) Is Nothing Then
        If Target.Value <> "" Then
            Target.Offset(-1, 0) = "<=" & Target.Value2
        Else
            Target.Offset(-1, 0) = ""
        End If
    End If
End Sub

Bonne journée.
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…