XL 2016 filtre multicritère

zakariamalki

XLDnaute Nouveau
Bonjour,
je veux realiser un Ce lien n'existe plus sur une colonne avec un critère de commencer par
j'ai essayé ca mais ca marche pas

ActiveSheet.Range("A" & 1 & ":W" & lastrow).AutoFilter Field:=18, Criteria1:=Array("=ESCALADE*", "=FAUX MANQUANT*", "=SUIVI PROJET*"), Operator:=xlFilterValues

Merci d'avance
 

job75

XLDnaute Barbatruc
Re, salut JM,

Pour éviter de vous fatiguer puisqu'il n'y a pas grand-chose à comprendre :
VB:
Sub Filtrer()
[Z2] = "=OR(LEFT(R2,8)=""ESCALADE"",LEFT(R2,13)=""FAUX MANQUANT"",LEFT(R2,12)=""SUIVI PROJET"")"
[A:W].AdvancedFilter xlFilterInPlace, [Z1:Z2]
End Sub
Police blanche pour la cellule Z2.

A+
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Bonjour,

VB:
  ActiveSheet.Range("$A$1:$w$100").AutoFilter Field:=18, Criteria1:=Array("escalade", "suivi projet","faux manquant", Operator:=xlFilterValues



En PJ, un exemple pour faire une recherche par contenu

Boisgontier
 

Pièces jointes

  • Copie de FltreAutoListe.xlsm
    21 KB · Affichages: 11
  • Copie de FiltreElabListe.xls
    69 KB · Affichages: 6
Dernière édition:

job75

XLDnaute Barbatruc
Re, bonjour JB,

Une autre solution avec une fonction VBA :
VB:
Sub Filtrer()
[Z2] = "=CommencePar(R2,""ESCALADE"",""FAUX MANQUANT"",""SUIVI PROJET"")"
[A:W].AdvancedFilter xlFilterInPlace, [Z1:Z2]
End Sub

Function CommencePar(x$, crit1$, Optional crit2$ = "µ", Optional crit3$ = "µ") As Boolean
CommencePar = x Like crit1 & "*" Or x Like crit2 & "*" Or x Like crit3 & "*"
End Function
Le code de la fonction doit impérativement être placé dans un module standard.

A+
 

zakariamalki

XLDnaute Nouveau
Re, bonjour JB,

Une autre solution avec une fonction VBA :
VB:
Sub Filtrer()
[Z2] = "=CommencePar(R2,""ESCALADE"",""FAUX MANQUANT"",""SUIVI PROJET"")"
[A:W].AdvancedFilter xlFilterInPlace, [Z1:Z2]
End Sub

Function CommencePar(x$, crit1$, Optional crit2$ = "µ", Optional crit3$ = "µ") As Boolean
CommencePar = x Like crit1 & "*" Or x Like crit2 & "*" Or x Like crit3 & "*"
End Function
Le code de la fonction doit impérativement être placé dans un module standard.

A+
Pour filter les valeurs différents au valeur des filtre on peut remplacer = avec <> ?
 

job75

XLDnaute Barbatruc
Pour filter les valeurs différents au valeur des filtre on peut remplacer = avec <> ?
Pour le code du post #5 remplacer "=" par "<>" et "OR" par "AND".

Pour le post #9 utiliser le code :
VB:
Sub Filtrer()
[Z2] = "=CommencePasPar(R2,""ESCALADE"",""FAUX MANQUANT"",""SUIVI PROJET"")"
[A:W].AdvancedFilter xlFilterInPlace, [Z1:Z2]
End Sub

Function CommencePasPar(x$, crit1$, Optional crit2$ = "µ", Optional crit3$ = "µ") As Boolean
CommencePasPar = Not x Like crit1 & "*" And Not x Like crit2 & "*" And Not x Like crit3 & "*"
End Function
 

zakariamalki

XLDnaute Nouveau
Pour le code du post #5 remplacer "=" par "<>" et "OR" par "AND".

Pour le post #9 utiliser le code :
VB:
Sub Filtrer()
[Z2] = "=CommencePasPar(R2,""ESCALADE"",""FAUX MANQUANT"",""SUIVI PROJET"")"
[A:W].AdvancedFilter xlFilterInPlace, [Z1:Z2]
End Sub

Function CommencePasPar(x$, crit1$, Optional crit2$ = "µ", Optional crit3$ = "µ") As Boolean
CommencePasPar = Not x Like crit1 & "*" And Not x Like crit2 & "*" And Not x Like crit3 & "*"
End Function
Merci bien pour vos réponses
 

zakariamalki

XLDnaute Nouveau
Pour le code du post #5 remplacer "=" par "<>" et "OR" par "AND".

Pour le post #9 utiliser le code :
VB:
Sub Filtrer()
[Z2] = "=CommencePasPar(R2,""ESCALADE"",""FAUX MANQUANT"",""SUIVI PROJET"")"
[A:W].AdvancedFilter xlFilterInPlace, [Z1:Z2]
End Sub

Function CommencePasPar(x$, crit1$, Optional crit2$ = "µ", Optional crit3$ = "µ") As Boolean
CommencePasPar = Not x Like crit1 & "*" And Not x Like crit2 & "*" And Not x Like crit3 & "*"
End Function
j'ai essayé ca
[Z2] = "<>AND(LEFT(R2,8)=""ESCALADE"",LEFT(R2,13)=""FAUX MANQUANT"",LEFT(R2,12)=""SUIVI PROJET"")"
[A:W].AdvancedFilter xlFilterInPlace, [Z1:Z2]
mais toutes les champs ont disparu
 

Discussions similaires

Réponses
7
Affichages
3 K
Compte Supprimé 979
C
Réponses
1
Affichages
2 K
Compte Supprimé 979
C

Statistiques des forums

Discussions
312 198
Messages
2 086 153
Membres
103 137
dernier inscrit
Billly