Bonjour à tous,

J'ai créé un userform sur Excel et j'utilise la fonction AdvancedFilter avec laquelle je rencontre une difficulté.
Pour simplifier, je souhaite filtrer le tableau de données suivant :

Numéro de fiche Numéro de série
1 00123456789
2 7410258963


NB : Les cellules de ce tableau sont en format texte et sont récupérés à partir de textBox de mon userform.

Mon tableau de critère (également en format 'texte') est le suivant :

Numéro de série
0123456789

Mon code VBA est le suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
Sub filtreAvance1()
 
    'Déclaration des variables
    Dim rgDonnees As Range
    Dim rgCritere As Range
    Dim rgDestination As Range
 
    'Affectation des variables
    Set rgDonnees = Feuil4.Range("A1").CurrentRegion 'équivalent au 1er tableau exemple
    Set rgCritere = Feuil3.Range("Q3").CurrentRegion 'équivalent au 2nd tableau exemple
    Set rgDestination = Feuil2.Range("A1")
 
    'Suppression l'ancien filtre
    Feuil2.Cells.ClearContents
 
    'Exécute l'outil FiltreAvancee
    rgDonnees.AdvancedFilter xlFilterCopy, rgCritere, rgDestination
 
End Sub
J'aimerai que le résultat du filtre soit vide mais ce dernier m'extrait la fiche n°1 associée au numéro de série "00123456789" (dans mon critère, le numéro de série est "0123456789").
J'ai l'impression qu'Excel supprime les "0" du début des nombres, pourtant dans les deux tableaux (données & critère) les cellules sont au format 'texte'.
J'ai essayé différentes variantes telles que modifier mon tableau critère comme tel :

Numéro de série
=0123456789

Cependant, le résultat est le même. La seule solution que j'ai trouvé est de modifier mes numéros de série, en ajoutant une lettre au début comme "b" et là le résultat est conforme à mes attentes. J'aimerai une solution plus optimale s'il vous plaît ?

Merci par avance, bonne journée à vous