Filtrer un tableau en fonction de variables en VBA

Bonjour,

mes connaissances en VBA sont limitées, et je cherche depuis un moment sans résultat...

J'aimerai pourvoir filtrer un tableau en fonction de variable déclarée au préalable.

Ci joint un fichier exemple.

Sur l'onglet Base : les valeurs en colonne B sont changeantes ( macro paramètre)

J'aimerai pouvoir automatiser en macro ( plusieurs macros possibles) le fait de filtrer sur la feuille "Certificats" la colonne A en fonction du critère variable Adh ( en B2 sur l'onglet Base) et de la cellule C2 de la feuille base ( non définie en variable) afin de pouvoir faire un copier coller vers un autre onglet.

j'espère avoir été claire

En vous remerciant

Bonjour,

à tester,

Sub Test_Filtre()
With Sheets("certifiats").Range("$A$1:$P$1")
    .AutoFilter Field:=1, Criteria1:=Sheets("Base").Range("B2")  'Numéro Adh
    .AutoFilter Field:=3, Criteria1:=Sheets("Base").Range("C2")  'nuExCp
End With
End Sub

Bonjour,

Une autre proposition.

Les données sont sous forme de tableaux structurés.

Alt F8, exécuter FilterAndCopyData.

Cdlt.

144pour-aide-macro.xlsm (25.29 Ko)
Public Sub FilterAnCopyData()
Dim ws As Worksheet, td As Range, a, b
        Set ws = Worksheets("base")
        Set td = Range("Certificats")
        If td.ListObject.ShowAutoFilter Then td.ListObject.AutoFilter.ShowAllData
        a = Application.Match(ws.Cells(2, 2).Value, td.Columns(1), 0)
        b = Application.Match(ws.Cells(2, 3).Value, td.Columns(3), 0)
        If Not IsError(a) And Not IsError(b) Then
            With td.ListObject.Range
                .AutoFilter field:=1, Criteria1:=ws.Cells(2, 2).Value
                .AutoFilter field:=3, Criteria1:=ws.Cells(2, 3).Value
            End With
            With Range("Résultat").ListObject
                If Not .DataBodyRange Is Nothing Then .DataBodyRange.Delete
                td.CurrentRegion.Offset(1).Copy .Range.Cells(2, 1)
            End With
            td.ListObject.AutoFilter.ShowAllData
        End If
End Sub

Merci beaucoup à vous deux les deux fonctionnent comme souhaité.

Je savais que cela ne devait pas être sorcier, mais mes connaissances en prog sont limités et l'enregistreur de macro n'est pas performant pour ce que je voulais.

Merci encore

Rechercher des sujets similaires à "filtrer tableau fonction variables vba"