Excel - VB - AutoFilter

Résolu
KraaaL -  
 KraaaL -
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...)
Configuration: Windows XP
Firefox 2.0.0.16

5 réponses

  1. RailBird
     
    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
  2. KraaaL
     
    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
  3. RailBird
     
    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
  4. RailBird
     
    Faire un filtre élaboré semble être le choix le mieux adapté à ton problème
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. KraaaL
     
    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