philgood54000
XLDnaute Nouveau
Bonjour,
je suis à la recherche d'une aide sur mon fichier VBA moteur de recherche.
En quelques mots , j'ai un fichier assez important contenant des noms composés, j'ai une macro qui me permet d'aller chercher le mot inscrit avec toutes les correspondances liés à ma recherche.
ce que je souhaiterai avoir c'est que ma recherche ne sorte que le mot recherché exactement ( pour exemple : je cherche Martin, il me sort Martint, Martinet, Martins, etc...)
je mets la macro utilisé
Dim tab_mots() As String
Dim compteur As Byte
Dim ligne As Long: Dim ligne_ext As Long
Dim valider As Boolean
Dim ann As String: Dim dat As String
Dim marq As String: Dim pat As String
Dim chaine As String
purger
tab_mots = Split(Range("B2").Value, " ")
ligne = 2: ligne_ext = 6
While Sheets("Base 2021 2022").Cells(ligne, 2).Value <> ""
valider = True
ann = Sheets("TDB").Cells(ligne, 1).Value
dat = Sheets("TDB").Cells(ligne, 2).Value
marq = Sheets("TDB").Cells(ligne, 3).Value
pat = Sheets("TBD").Cells(ligne, 14).Value
chaine = ann & "-" & dat & "-" & marq & "-" & pat
For compteur = 0 To UBound(tab_mots())
If (Len(tab_mots(compteur)) > 3) Then
If (InStr(1, sansAccent(chaine), sansAccent(tab_mots(compteur)), vbTextCompare) = 0) Then
valider = False
Exit For
End If
End If
Next compteur
If (valider = True) Then
Cells(ligne_ext, 1).Value = ann
Cells(ligne_ext, 2).Value = dat
Cells(ligne_ext, 3).Value = marq
Cells(ligne_ext, 7).Value = pat
ligne_ext = ligne_ext + 1
End If
ligne = ligne + 1
Wend
Cells(1, 1).Select
End Sub
Merci d'avance pour votre aide .
je suis à la recherche d'une aide sur mon fichier VBA moteur de recherche.
En quelques mots , j'ai un fichier assez important contenant des noms composés, j'ai une macro qui me permet d'aller chercher le mot inscrit avec toutes les correspondances liés à ma recherche.
ce que je souhaiterai avoir c'est que ma recherche ne sorte que le mot recherché exactement ( pour exemple : je cherche Martin, il me sort Martint, Martinet, Martins, etc...)
je mets la macro utilisé
Dim tab_mots() As String
Dim compteur As Byte
Dim ligne As Long: Dim ligne_ext As Long
Dim valider As Boolean
Dim ann As String: Dim dat As String
Dim marq As String: Dim pat As String
Dim chaine As String
purger
tab_mots = Split(Range("B2").Value, " ")
ligne = 2: ligne_ext = 6
While Sheets("Base 2021 2022").Cells(ligne, 2).Value <> ""
valider = True
ann = Sheets("TDB").Cells(ligne, 1).Value
dat = Sheets("TDB").Cells(ligne, 2).Value
marq = Sheets("TDB").Cells(ligne, 3).Value
pat = Sheets("TBD").Cells(ligne, 14).Value
chaine = ann & "-" & dat & "-" & marq & "-" & pat
For compteur = 0 To UBound(tab_mots())
If (Len(tab_mots(compteur)) > 3) Then
If (InStr(1, sansAccent(chaine), sansAccent(tab_mots(compteur)), vbTextCompare) = 0) Then
valider = False
Exit For
End If
End If
Next compteur
If (valider = True) Then
Cells(ligne_ext, 1).Value = ann
Cells(ligne_ext, 2).Value = dat
Cells(ligne_ext, 3).Value = marq
Cells(ligne_ext, 7).Value = pat
ligne_ext = ligne_ext + 1
End If
ligne = ligne + 1
Wend
Cells(1, 1).Select
End Sub
Merci d'avance pour votre aide .