Fonction Excel comparaison de colonnes

Fermé
Bubus31 Messages postés 54 Date d'inscription samedi 14 décembre 2019 Statut Membre Dernière intervention 7 mai 2024 - 28 mars 2022 à 21:38
T3chN0g3n Messages postés 5002 Date d'inscription samedi 16 février 2019 Statut Membre Dernière intervention 3 juillet 2024 - 29 mars 2022 à 11:00
Bonjour le Forum,

Voici le contexte:

Je compare deux colonnes (une tirée d'une base de données et une tirée d'un extract de logiciel)
Je dois m'assurer que les données dans ces deux colonnes correspondent bien. La difficulté c'est que je n'ai pas tout le temps les mêmes orthographes car un extract provient d'un Logiciel et l'autre d'un fichier excel remplis à la main donc évidemment pour un même mot on peut retrouver différents orthographes ou façons d'écrire.



Pour le premier exemple en colonne C j'aurai "Nok" car le systeme ne sait pas que PLAS = Plastique ou Plastic.. (dans le fond, pas sur la forme)

Actuellement j'ai cette formule "Si(Colonne B = Colonne A; Ok ; Nok)" mais qui n'est pas tout a fait optimisée.
Connaissez-vous une formule plus concrète pour comparer ces colonnes ?

https://www.cjoint.com/c/LCCtHTndvVx

Merci à vous,

Bubus31

4 réponses

Raymond PENTIER Messages postés 58523 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 3 juillet 2024 17 141
29 mars 2022 à 02:01
Bonjour.

NON ! Impossible : Excel n'exploite pas l'intelligence artificielle.
1
brucine Messages postés 15516 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 3 juillet 2024 2 118
29 mars 2022 à 08:39
Bonjour,

On ne peut de toute façon pas comparer des termes qui ne sont pas ressemblants (BOMB spray) et où on est obligé de passer par une condition OU.

Pour ceux qui sont illicites, on ne peut sans doute pas intervenir sur le logiciel mais sur la main des opérateurs: il est constant que l'unité de masse est g ou kg (peu importe la casse dans la pratique) et pas autre chose.

La fonction rechercher-remplacer sur le classeur importé est toujours possible mais fastidieuse.

S'il s'agit toujours à peu près des mêmes coquilles, on peut passer par révision-vérification-orthographe en ajoutant au dictionnaire les mots à reprendre.

Dans certains cas particuliers, on doit pouvoir tricher par une recherche sur caractères génériques: M*TA va rendre tous les cas de figure, M?TA encore mieux puisque un seul caractère est concerné; même chose pour PLAS qui, alternativement puisque c'est le début du mot avec toujours le même nombre de caractères, peut être recherché via GAUCHE ou STXT.
1
Bubus31 Messages postés 54 Date d'inscription samedi 14 décembre 2019 Statut Membre Dernière intervention 7 mai 2024
29 mars 2022 à 09:33
Bonjour,

Et dans la mesure où on demande à Excel de comparer les premieres lettres seulement ? Pour Plastic et Plastique par exemple.
Le but est qu'il me renvoie "OK" car les premieres lettres coincident... Quelle formule cela donnerait ?

Merci à vous,

Bubus31
0
T3chN0g3n Messages postés 5002 Date d'inscription samedi 16 février 2019 Statut Membre Dernière intervention 3 juillet 2024 1 105
29 mars 2022 à 09:33
Bonjour,
Dans votre exemple vous pouvez faire une recherche sur "plas", soit les quatre premiers caractères (voir fonction GAUCHE par exemple) mais il faut voir si c'est applicable pour le reste ...

Cdlt.
0
brucine Messages postés 15516 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 3 juillet 2024 2 118
29 mars 2022 à 10:25
Donc pour PLAS:

=SI(GAUCHE(A3;4)="PLAS";"OK";"NOK")

Pour META, c'est un peu plus compliqué:

=SI(ESTERR(CHERCHE("M?TA";A4));"NOK";"OK")

Pour BOMB, on est obligé de comparer:

=SI(A5="BOMB";SI(OU(B5="spray"; B5="aérosol");"OK";"NOK");"NOK")

Pour les grammes:

=SI(OU(A9="G";A9="GRS");SI(B9="GRM";"OK";"NOK");"NOK")

Et les kilos:

=SI(ESTERR(CHERCHE("KG*";A10));"NOK";"OK")

Le problème est bien sûr qu'il faut imbriquer toutes ces conditions, facile s'il n'y a que quelques critères à vérifier comme dans l'exemple, mais une usine à gaz si le nombre en est grand.
0
T3chN0g3n Messages postés 5002 Date d'inscription samedi 16 février 2019 Statut Membre Dernière intervention 3 juillet 2024 1 105 > brucine Messages postés 15516 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 3 juillet 2024
Modifié le 29 mars 2022 à 10:46
Je partait plutôt sur un truc plus "universel" type
=SI(EXACT(GAUCHE(A2;4);GAUCHE(B2;4));"OK";"NOK")

Avec juste la première lettre ça pourrait marcher pour pas mal de cas, mais par contre pour BOMB non ...
0
brucine Messages postés 15516 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 3 juillet 2024 2 118 > T3chN0g3n Messages postés 5002 Date d'inscription samedi 16 février 2019 Statut Membre Dernière intervention 3 juillet 2024
29 mars 2022 à 10:51
Certes plus joli, mais ne fonctionnera pas parce que EXACT est casse-dépendant (et que sans même parler de BOMB qui n'est pas retrouvé, META est réputé égal à Méta, que les 4 premiers caractères de grs ne sont pas les mêmes que ceux de GRM).
0
T3chN0g3n Messages postés 5002 Date d'inscription samedi 16 février 2019 Statut Membre Dernière intervention 3 juillet 2024 1 105 > brucine Messages postés 15516 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 3 juillet 2024
29 mars 2022 à 11:00
Je me disais en ne mettant pas 4 caractères mais un seul (vu que tous les mots ont une lettre différente, P, M, B, G, K ...), mais effectivement si c'est sensible à la casse c'est nul :/
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 404
29 mars 2022 à 09:51
Bonjour
à défaut de tout connaître de votre problème et selon le fichier joint, voyez si ce modèle peut vous servir. Pour aller plus loin il faudrait en savoir plus
https://www.cjoint.com/c/LCDhZsIkazc

crdlmnt
0