Bonjour à tous,
Aprés avoir parcouru plusieurs topics et sites sur la question, je me tourne vers vous car aucune des solutions que j'ai pu trouver se résolvent mon problème.
Voila, j'ai besoin de savoir si des entreprises qui nous ont contacté font partie d'une liste d'entreprises sélectionnées par le service client.
Le problème est que lorsque les gens renseignent les informations des entreprises qui nous contactent, ils ne renseignent pas toujours les fiches avec le même soin. Par exemple:
LVMH = LVMVH Cosmétiques = LVMH Fragances
Ici, mon but serait de pouvoir faire des recherches dans ma liste de référence issue du service client sur des mots clefs tirés des fiches de contact. Sur l'exemple ci-dessus, je ferais ma recherche avec le mot LVMH par exemple.
Le pb est que Excel ne détecte pas la chaîne de caractères "LVMH" si elles n'est pas seule dans sa cellule avec le code que j'ai fait. Est-ce une limite d'Excel/VBA ou y a-t-il un moyen pour y parvenir?
Voici le code que j'utilise:
Sub New_method()
Workbooks("Book1.xlsm").Activate
Dim iLignFin As Long
Dim i As Long
Dim i2 As Long
Sheets("Sheet3").Select
'Fin de la première liste de référence
Cells(2, 1).End(xlDown).Select
iLignFinISS = ActiveCell.Row
'Fin de la seconde liste de référence
Cells(2, 2).End(xlDown).Select
iLignFinEsales = ActiveCell.Row
'Lignes de début de renseignement des infos trouvées dans un tableau de résultats
iStartISS = 3
iStartEsales = 3
For i = 2 To iLignFinISS
If Cells(3, 4).Value Like "*" & Cells(i, 1).Value & "*" Then 'La valeur à chercher est en cellule(3,4)
Cells(iStartISS, 6) = Cells(i, 1).Value 'On récupère le texte contenu dans la cellule qui a matché pour vérifier la pertinence
Cells(iStartISS, 7) = i 'On récupère le numéro de ligne de la valeur identifiée pour pouvoir aller vérifier les infos
iStartISS = iStartISS + 1
End If
Next
For i2 = 2 To iLignFinEsales
If Cells(3, 4).Value Like "*" & Cells(i2, 2).Value & "*" Then
Cells(iStartEsales, 8) = Cells(i2, 2).Value
Cells(iStartEsales, 9) = i2
iStartEsales = iStartEsales + 1
End If
Next
Cells(3, 6).Select
End Sub