Recherche d'un nombre inclus dans un autre

Bonjour,

je souhaite savoir si un nombre est inclus dans un autre en terme de chaine de caractères.

Par exemple:

J'ai un tableau excel:

12345 Iced tea

3676 Coca

et j'ai un autre tableau avec des codes:

12345678

36765436

Si 12345 est inclus dans le 2ème tableau, il faut en ressortir la valeur Iced tea

Si c'est 3676, alors on retourne la valeur Coca.

Cf en pj un exemple!

Bonsoir et Bienvenue sur XLP,

en C3,

=SIERREUR(INDEX(H$3:H$6;EQUIV(VRAI;ESTNUM(CHERCHE(G$3:G$6;B3));0));"")

@ valider par Ctrl+Maj+Entree

@ tirer vers le bas

@ + +

bonsoir ;re

ou alors (sans validation

=SI(B3="";"";SI(ESTNUM(SOMMEPROD(CHERCHE(G$3;B3)));H$3;H$4))

cordialement

Re,

tulipe_4 a écrit :

bonsoir ;re

ou alors (sans validation

=SI(B3="";"";SI(ESTNUM(SOMMEPROD(CHERCHE(G$3;B3)));H$3;H$4))

cordialement

Faut toujours prévoir tous les cas de figure mon ami..

  1. Taper 30000 par exemple en B4 et remarque ta formule qu'est ce qu'elle va renvoyer, c'est réglable..
  2. Pour le tableau G3:H6 c'est juste un exemple, il peut contenir plusieurs valeurs et pas juste 2

@ + +

re r@chid

j'aurai preferé " mon cher ami"

mais tu as raison ; j'avais fait "partisan du moindre effort "

donc toujours sans validation

10jayjav-2.zip (4.62 Ko)

cordialement

Bonsoir,

Bonsoir R@chid, tulipe_4

C'est toujours un plaisir de vous suivre dans vos formules matricielles

Cdlt

nb: R@chid, tu chipotes

bonjour jean- eric

non et resolument non ; r@chid ne chipotte pas ; il est rigoureux (moi -) ; il fait dans les { } tandis que j'essaie d'eviter (9 fois/10 pour le sport) ; donc immediatement ça sombre dans le "sommeprod"

alors dans ce cas là; le plus dur c'est d'echapper(au moins les contourner) les 0 parce que pas le droit au "" (comme dans les matricielles )

nos solutions sont souvant lourdes ;elles peuvent eventuellement servir a ceux qui n'ont pas droit au VBA

attend un peu que je m'y mette .... ce qui me rassure c'est qu'Amadeus; a lui aussi tardé ......

en attendant je m'inspire

cordialement

Bonjour,

merci!

Mais en fait, j'ai du oublier de préciser que le code à reconnaitre devait être en début de nombre...

Car le code fabricant est forcément en début de code barre.

Si 123=Perrier

et que le code barre est 123456: il faut indiquer Perrier

Si le code barre est 454123, il ne doit pas ressortir Perrier...

C'est d'ailleurs la seule manière de garantir l'unicité... En effet si 123=Perrier et 456=Coca

Que va faire la formule si le code barre est 123456?

Bonjour @ tous,

Jayjayjay555 a écrit :

Bonjour,

merci!

Mais en fait, j'ai du oublier de préciser que le code à reconnaitre devait être en début de nombre...

Car le code fabricant est forcément en début de code barre.

Si 123=Perrier

et que le code barre est 123456: il faut indiquer Perrier

Si le code barre est 454123, il ne doit pas ressortir Perrier...

C'est d'ailleurs la seule manière de garantir l'unicité... En effet si 123=Perrier et 456=Coca

Que va faire la formule si le code barre est 123456?

Très belle question ???

Pour ma formule, elle va renvoyer celui qui est au dessus de l'autre, autrement dit, si Coca est en premier elle renvoie Coca si c'est Perrier qui est en premier elle revoie Perrier...

Pour bien répondre à ta question, il nous faut une petite précision, une autre question à poser :

Si 1234=Rachid, 123=Tulipe pour le code 123499999 qu'est ce que la formule doit renvoyer ??

Est ce que le codes clients ont tous un nombre de chiffres uni 3, 4, ou 5 etc.., ou bien ils ont un nombre de caracteres différents ??

@ te relire

Merci pour votre réactivité!

Il faut renvoyer le premier code trouvé, sachant que le code est forcément en premier dans le code barre.

Les codes clients ont tous le même nombre de caractères.

En revanche, j'ai fait le test sur ta solution, et quand:

123=coca

456=perrier

Si mon code barre est 123456, il affiche un autre code... et non pas Coca comme tu le dis... Est-ce normal? En tous les cas, c'est coca qu'il doit inscrire.

En effet, quand mon code est 123: il met coca, 1234 il met coca, 12345, il met coca, et 123453, il met un autre code aucun rapport.

Je te mets la preuve en pj.

Merci pour ton aide!

12jayjav-2.zip (7.84 Ko)

Bonjour @ tous,

Il faut savoir à qui on s'adresse, la formule dans ton fichier joint n'est pas la mienne..

voici la formule que j'ai proposée,

=SIERREUR(INDEX(H$3:H$6;EQUIV(VRAI;ESTNUM(CHERCHE(G$3:G$6;B3));0));"")

@ valider par Ctrl+Maj+Entree

Est-ce que tu peux nous fournir un exemple plus précis, un extrait de l'original serait plus parlant, j'aime pas répondre au hasard, tu dis que les codes ont tous le même nombre de caracteres, alors montre-le sur le fichier stp.

@ te relire

Bonjour,

excuse moi.

Voici un fichier avec la colonne C à remplir par la formule.

Les codes barres sont en colonne B et les codes fabricants en colonne G et H.

21jayjav-2.zip (7.83 Ko)

Re,

En C3,

=SIERREUR(INDEX(H$3:H$7;EQUIV(VRAI;ESTNUM(CHERCHE(G$3:G$7;GAUCHE(B3;NBCAR(G$3))));0));"")

@ valider par Ctrl+Maj+Entree

@ tirer vers le bas

@ + +

Merci!!!

Rechercher des sujets similaires à "recherche nombre inclus"