[VBA] Remplacer un mot par un lexique

miky973

XLDnaute Occasionnel
Bonjour,

J'ai un petit soucis j'ai un tableau qui réception des noms par classeur. exemple :
Microtosh -a-
tocal obj
offiche abdj
Warning (fondation)
skf -abdr

Je reçois les données en brut et je dois à chaque fois netoyer les noms en retirant les -a-, obj ou bien d'autre attribution. exemple:
Microtosh
tocal
offiche
Warning (fondation)
skf



J'ai tenté de créer un glossaire (lexique) qui va chercher automatiquement dans les 3 premières lettres du nom dans le lexique pour que ça ce corrige automatiquement, mais apparement je me suis rendu compte qu'il ne va pâs chercher le bon nom, il y a plus de 1000 valeurs proposées. exemple :
Recherche des 3 première lettres : skf -abdr :
Il vas pas récupérer skf mais proskfe par exemple.

Quelqu'un aurait une proposition pour que cela me trouve automatiquement la valeur souhaitée.

J'avais fait ce code :
Code:
 For i = 40 To 49 'de la ligne à la ligne
    j = 1  'de la colonne à la colonne
    
     Dat = Range("A" & i).Value
     

    

 'Dat = "Tocal"
 Set c = Workbooks(ThisWorkbook.Name).Sheets("Glossaire").Range("A:A").Find(What:=Left(Dat, 6), LookIn:=xlValues, LookAt:=xlPart)
If c Is Nothing Then

Else

 'MsgBox c
Range("A" & i).Value = c
MsgBox Range("A" & i).Value
 
Next i

Quelqu'un aurait il la solution?

Cordialement,

Miky
 

Paritec

XLDnaute Barbatruc
Re : [VBA] Remplacer un mot par un lexique

bonjour miky93
Bon alors si tu nous disais ce que tu veux ce serait plus simple
si tu as microtoch - a- xxx tu veux récupérer microtoch et pour skf pareil???
si c'est cela c'est assez simple des que j'aurai ton fichier tu auras la réponse
enfin si tu veux toujours récupérer la première partie du nom ??
a+
Papou:)
 
Dernière édition:

miky973

XLDnaute Occasionnel
Re : [VBA] Remplacer un mot par un lexique

Bonjour,

Ci-joint le fichier en activant la macro tu verras que parfois il y a des incohérences pour certaines valeurs rechercher.

exemple de pierre et vacance.

Best regards, Merci pour ton aide

Miky
 

Pièces jointes

  • exemple_name change.xls
    47.5 KB · Affichages: 145

miky973

XLDnaute Occasionnel
Re : [VBA] Remplacer un mot par un lexique

bonjour miky93
Bon alors si tu nous disais ce que tu veux ce serait plus simple
si tu as microtoch - a- xxx tu veux récupérer microtoch et pour skf pareil???
si c'est cela c'est assez simple des que j'aurai ton fichier tu auras la réponse
enfin si tu veux toujours récupérer la première partie du nom ??
a+
Papou:)

Re papou,

J'espère que mon exemple te convient? et reste compréhensible.

Miky
 

Paritec

XLDnaute Barbatruc
Re : [VBA] Remplacer un mot par un lexique

Bonjour Miky93 le forum
bon alors tu ne te perds pas en explications, cela doit être une évidence sans doute,
tu parles de pierre & vacances, parlons en si tu as en colonne A de résultat pierre & vacances, tu doit retrouver quoi dans ta cellule??????
dans ton Glossaire il n'y a pas pierre & vacances!!!!!!
Bref il faut sans doute le deviner et savoir ce que tu souhaites obtenir, raté j'ai pas de boule de cristal, par contre tu peux expliquer et éventuellement mettre dans la colonne B le résultat souhaité et si pas de correspondance alors on fait quoi???? comme pour pierre & vacances???
Si bien sur le départ c'est la colonne A de 2 à 12 ???? mais là aussi pas sur!!
à te relire
a+
Papou:)
 

miky973

XLDnaute Occasionnel
Re : [VBA] Remplacer un mot par un lexique

Bonjour Miky93 le forum
bon alors tu ne te perds pas en explications, cela doit être une évidence sans doute,
tu parles de pierre & vacances, parlons en si tu as en colonne A de résultat pierre & vacances, tu doit retrouver quoi dans ta cellule??????
dans ton Glossaire il n'y a pas pierre & vacances!!!!!!
Bref il faut sans doute le deviner et savoir ce que tu souhaites obtenir, raté j'ai pas de boule de cristal, par contre tu peux expliquer et éventuellement mettre dans la colonne B le résultat souhaité et si pas de correspondance alors on fait quoi???? comme pour pierre & vacances???
Si bien sur le départ c'est la colonne A de 2 à 12 ???? mais là aussi pas sur!!
à te relire
a+
Papou:)

Re papou,

Le but du jeu étant que si le nom se trouve dans le glossaire alors le modifier sinon laisser tel quel. Dans le cas de pierre et vacances, il n'y ai pas dans le glossaire et il va me donner à la Klepierre. Tout cela ne convient pas.

J'espère que c'est beaucoup plus clair

a+ mike
 

Paritec

XLDnaute Barbatruc
Re : [VBA] Remplacer un mot par un lexique

Re Miky973 le forum
bah oui je comprendrai si tu as expliqué le résultat souhaité, mais je ne te l'avais demandé que trois fois seulement !!
bon je vais ouvrir ton fichier et je te redis quoi
a+
papou:)
 
Dernière édition:

Statistiques des forums

Discussions
312 084
Messages
2 085 194
Membres
102 811
dernier inscrit
caroline29260