[VBA Excel] Filtres automatiques

Bonjour,

j'ai deux colonnes avec des filtres automatiques. J'aimerai automatiser ceci :

- il faudrait filtrer le premier élément apparaissant dans le menu déroulant du filtre (je ne suis pas sensé connaître sa valeur)
-remettre le filtre à ALL
-refaire cela avec la colonne de droite

Est-ce possible ?

Merci d'avance

2 réponses

  1. Contributeur
    bonjour

    voilà la macro :

    Sub filtre_2col()
    Dim sel, valeur, k, rep, col
    Set sel = Application.InputBox("Choisissez les colonnes à filtrer", _
    "Colonnes à filtrer", , 100, 200, , , 8)
    For col = 0 To 1
    valeur = Cells(sel.Row + 1, sel.Column + col).Value
    For k = sel.Row + 1 To Cells(65000, sel.Column).End(xlUp).Row
    If Cells(k, sel.Column + col).Value < valeur _
    And Cells(k, sel.Column + col).Value <> "" Then
    valeur = Cells(k, sel.Column + col).Value
    End If
    Next k
    Range(sel.Address).EntireColumn.AutoFilter Field:=col + 1, Criteria1:=valeur
    rep = MsgBox("Vu ?", vbOKOnly, "Validation")
    Selection.AutoFilter Field:=col + 1
    Range(sel.Address).AutoFilter
    Next col
    End Sub


    tu peux remplacer :
    Set sel = Application.InputBox("Choisissez les colonnes à filtrer", _
    "Colonnes à filtrer", , 100, 200, , , 8)

    par Set sel = range("A1:B1") A1:B1 étant le titre des colonnes.
    1
    1. Contributeur
      bonjour

      Est-ce possible ? oui bien sûr !

      Est-ce utile ? non !

      il faudrait filtrer le premier élément : c'est le plus petit.
      remettre le filtre à ALL aucun souci.
      refaire cela avec la colonne de droite
      aucun souci.

      Lorsque tu écris une macro qui fait cela ton écran s'agite,
      et revient à l'état initial, sinon il faut avoir plein de messages
      intermédiaires et il n'y a plus d'intérêt.

      Si tu tiens à la macro, je te la mettrais quand même...
      0
      1. je sais que c'est un peu ridicule mais ca m'aiderait parce que je veux une photo de toutes les lignes concernant le critère filtré.

        Merci
        0