Excel - VB - AutoFilter

Résolu/Fermé
KraaaL - 18 sept. 2008 à 11:28
 KraaaL - 18 sept. 2008 à 14:41
Bonjour,

J'ai un petit soucis avec la fonction AutoFilter...
Cette fonction ne me permet de mettre que 2 critères (criteria1 & criteria2), le soucis c'est que j'ai 3 critères à rentrer...

Voici la macro :

Private Sub CommandButton2_Click()
Selection.AutoFilter Field:=17, Criteria1:="<>Déclinée", Operator:=xlAnd, Criteria2:="<>Perdue"

End Sub

J'aimerais rajouter [, Operator:=xlAnd, Criteria3:="<>Terminée"] à la suite mais le problème c'est que cela ne marche pas...

Comment puis-je faire pour mettre 3 critères sur mon bouton ??

D'avance merci

KraaaL
(l'incompétent en informatique qui galère toujours sur son fichier...)
A voir également:

5 réponses

Une exemple de Code VBA :

Range("C8:K8").Select
Selection.NumberFormat = "0.00%"
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, _
Formula1:="0,85"
Selection.FormatConditions(1).Interior.ColorIndex = 43
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlBetween, _
Formula1:="0,75", Formula2:="0,85"
Selection.FormatConditions(2).Interior.ColorIndex = 45
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlLess, _
Formula1:="0,75"
Selection.FormatConditions(3).Interior.ColorIndex = 3

Qui selon la valeur de la cellule, la colore. Avec <, > et = .
Evidemment c'est possible de manipuler du texte.
0
Merci RailBird mais je ne pense pas que cela soit ce que je désire.
Là je ne veux pas colorer des cellules.
Je veux juste que le bouton sur lequel je clique enlève (= filtre) les lignes pour lesquelles, dans la cellule 17 càd colonne Q il y a soit :
déclinée,
perdue,
terminée.

pour l'instant avec la fonction AutoFilter je ne peux que mettre "déclinée" et "perdue" dans les critera1 et critera 2.

Voici le code :

Private Sub CommandButton2_Click()
Selection.AutoFilter Field:=17, Criteria1:="<>Déclinée", Operator:=xlAnd, Criteria2:="<>Perdue"
' , Operator:=xlAnd, Criteria3:="<>Terminée" -> pas possible, peut pas y avoir 3 criteria dans AutoFilter...

End Sub

Comment puis-je faire ??
0
Bah celle dit tu peux créer une liste de croix pour t'afficher les cellules contenant soit ta variable1 soit ta variable2 ou soit ta variable3.
0
Faire un filtre élaboré semble être le choix le mieux adapté à ton problème
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
On (des collègues de boulot et moi-même) avons essayé et on eu un p'tit souci.

Donc voici comment mes collègues ont fait :

Private Sub CommandButton2_Click()
i = 6

While i <= 356
If (Range("Q" & i) = "Déclinée") Or (Range("Q" & i) = "Perdue") Or (Range("Q" & i) = "Terminée") Then
Rows(i).Hidden = True
End If
i = i + 1
Wend

End Sub


Merci RailBird pour tes suggestions,
Et un grand merci à mes collègues Vincent et Marcos qui ont maîtrisé le problème en 30 secondes... ^^

Longue vie à ccm.net !!
0