AUTOFILTER - criteria1 lié à une formule

dieu08

XLDnaute Occasionnel
Bonjour les forumiteux,

Malgré mes recherches, je n'ai pas réussi à trouver une solution pour définir le critère du filtrage des données par une formule.

Je souhaite filtrer une colonne comportant des références numériques par le premier chiffre de cette référence (1 par exemple) sans être contraint de rapatrier ce premier chiffre dans une autre colonne ou dans un tableau matriciel.

Je vous précise que ce filtrage est lié à un userform mais je ne pense pas que cela soit important.

VB:
Private Sub UserForm_Initialize()

Dim col As Integer

    With Sheets("et2")
        ListUT.List = .Range("B2:B33").Value
    End With
   
    With ActiveSheet
        If .AutoFilterMode = False Then
        Rows(1).AutoFilter
        Else: If .FilterMode = True Then .ShowAllData
        End If
    End With
    col = Rows(1).Find("Classo. ASG").Column
    Selection.AutoFilter Field:=col, Criteria1:="1*"

End Sub

L'élément "Criteria1:="1*" devrait être remplacé dans la théorie par une formule de type "LEFT(cellule,1)=(valeur d'une saisie dans une combobox).

Merci d'avance pour votre aide précieuse.
 

youky(BJ)

XLDnaute Barbatruc
Bonjour,
fx = "=" & left(cellule,1) & "*"
Selection.AutoFilter Field:=col, Criteria1:=fx
Attention la colonne doit être au format text sinon ca marche pas.
Si les données de la colonne doivent rester en numérique j'opterai pour une boucle en mettant 1 dans la dernière colonne je filtre dessus et efface en fermant l'userform.

Bruno
 

Discussions similaires

Statistiques des forums

Discussions
315 167
Messages
2 116 924
Membres
112 915
dernier inscrit
Ludof