Bonjour,
J'ai un gros souci de programmation vba. J'ai cherché sur les forums, mais rien de vraiment précis.
Je vous explique.
J'ai deux tableaux A et B comportant des libellés à matcher ensemble.
*Le tableau A provient d'une interface qui remplace tout caractère différent des 26 lettres alphabétiques et des 10 chiffres par un « _ ». Aussi tout est au singulier.
exemple: pépite de garçon devient pepite_de_garcon
*Le tableau B provient d'une interface qui prend tout en compte : toutes formes de lettres et chiffres et caractères spéciaux. De plus, il comporte parfois des erreurs ou des omissions ou des ajouts :
exemple: pantalon peut être écrit " pantaln " ou " pantalone" ou "pantalon"
De mon côté dans le tableau A, j'ai remplacer tous les « _ » par rien du tout
Exemple : 'papa_p' devient 'papap'
Et dans mon tableau B aussi j'ai fait pareil pour les espaces et les caractères spéciaux
Je sollicite donc votre aide pour écrire alors un programme qui fait un recherchev spécial.
* S'il retrouve A1 dans B, il me l'affiche en B1 (Facile, recherchev standard: sur mes 12000 lignes de A, j'ai 9000 correspondances)
* Pour les 3000 lignes restantes, c'est là ou se situe le problème. S'il ne trouve pas A1, qu'il m'affiche en B1 le mot qui lui ressemble le plus (taux de ressemblance maximum)
C'est dans ce 2ème cas que je sèche. Car il faut que ma macro puisse en un premier temps rechercher, comparer A1 avec tous les mots de B, puis afficher dans un deuxième temps celui qui a le taux de ressemblance le plus élevé.
Une idée m'est venue: c'est d'utiliser la fonction levenshtein, mais je ne sais pas trop comment l'adapter....
Votre aide serait la bienvenue.
Merci beaucoup!!!!
J'ai un gros souci de programmation vba. J'ai cherché sur les forums, mais rien de vraiment précis.
Je vous explique.
J'ai deux tableaux A et B comportant des libellés à matcher ensemble.
*Le tableau A provient d'une interface qui remplace tout caractère différent des 26 lettres alphabétiques et des 10 chiffres par un « _ ». Aussi tout est au singulier.
exemple: pépite de garçon devient pepite_de_garcon
*Le tableau B provient d'une interface qui prend tout en compte : toutes formes de lettres et chiffres et caractères spéciaux. De plus, il comporte parfois des erreurs ou des omissions ou des ajouts :
exemple: pantalon peut être écrit " pantaln " ou " pantalone" ou "pantalon"
De mon côté dans le tableau A, j'ai remplacer tous les « _ » par rien du tout
Exemple : 'papa_p' devient 'papap'
Et dans mon tableau B aussi j'ai fait pareil pour les espaces et les caractères spéciaux
Je sollicite donc votre aide pour écrire alors un programme qui fait un recherchev spécial.
* S'il retrouve A1 dans B, il me l'affiche en B1 (Facile, recherchev standard: sur mes 12000 lignes de A, j'ai 9000 correspondances)
* Pour les 3000 lignes restantes, c'est là ou se situe le problème. S'il ne trouve pas A1, qu'il m'affiche en B1 le mot qui lui ressemble le plus (taux de ressemblance maximum)
C'est dans ce 2ème cas que je sèche. Car il faut que ma macro puisse en un premier temps rechercher, comparer A1 avec tous les mots de B, puis afficher dans un deuxième temps celui qui a le taux de ressemblance le plus élevé.
Une idée m'est venue: c'est d'utiliser la fonction levenshtein, mais je ne sais pas trop comment l'adapter....
Votre aide serait la bienvenue.
Merci beaucoup!!!!