Microsoft 365 SI(NB;SI( ) Ne fonctionne que s'il y a une lettre dans la plage séléctionnée

smargot

XLDnaute Nouveau
Bonjour,
Je crée une fiche produit avec une formule qui, selon le gencod inséré dans une cellule, me met le prix correspondant dans une autre cellule.
J'ai utilisé la formule SI(NB;SI( ), mais je me rends compte que cela ne marche que s'il y a une lettre dans la plage sélectionnée.

Voici ma formule : =SI(NB.SI(B5;"*3322721000000*");"10";SI(NB.SI(B5;"*3322726000001*");"11";"HORS HMP")))
Si j'ajoute une lettre au début de mon gencod dans la plage sélectionnée, le tarif se met, mais sinon il ne me le trouve pas, y a t il une raison ?

Merci beaucoup
 
Solution
Bonjour smargot, le fil,
Si j'ajoute une lettre au début de mon gencod dans la plage sélectionnée, le tarif se met, mais sinon il ne me le trouve pas, y a t il une raison ?
Oui, NB.SI recherche un texte alors qu'en B5 vous avez un nombre.

Utilisez plutôt la fonction CHERCHE ou la fonction TROUVE :
Code:
=SI(ESTNUM(TROUVE(3322721000000;B5));"10";SI(ESTNUM(TROUVE(3322726000001;B5));"11";"HORS HMP"))
A+

Gégé-45550

XLDnaute Accro
Bonjour,
Je crée une fiche produit avec une formule qui, selon le gencod inséré dans une cellule, me met le prix correspondant dans une autre cellule.
J'ai utilisé la formule SI(NB;SI( ), mais je me rends compte que cela ne marche que s'il y a une lettre dans la plage sélectionnée.

Voici ma formule : =SI(NB.SI(B5;"*3322721000000*");"10";SI(NB.SI(B5;"*3322726000001*");"11";"HORS HMP")))
Si j'ajoute une lettre au début de mon gencod dans la plage sélectionnée, le tarif se met, mais sinon il ne me le trouve pas, y a t il une raison ?

Merci beaucoup
Bonjour,
vous avez une formule basée sur des chaînes de caractères ("*3322721000000*" et "*3322726000001*"), il est donc normal qu'elle recherche du texte, non ?
Cordialement,
 

job75

XLDnaute Barbatruc
Bonjour smargot, le fil,
Si j'ajoute une lettre au début de mon gencod dans la plage sélectionnée, le tarif se met, mais sinon il ne me le trouve pas, y a t il une raison ?
Oui, NB.SI recherche un texte alors qu'en B5 vous avez un nombre.

Utilisez plutôt la fonction CHERCHE ou la fonction TROUVE :
Code:
=SI(ESTNUM(TROUVE(3322721000000;B5));"10";SI(ESTNUM(TROUVE(3322726000001;B5));"11";"HORS HMP"))
A+
 

smargot

XLDnaute Nouveau
Bonjour,
vous avez une formule basée sur des chaînes de caractères ("*3322721000000*" et "*3322726000001*"), il est donc normal qu'elle recherche du texte, non ?
Cordialement,
Bonjour smargot, le fil,

Oui, NB.SI recherche un texte alors qu'en B5 vous avez un nombre.

Utilisez plutôt la fonction CHERCHE ou la fonction TROUVE :
Code:
=SI(ESTNUM(TROUVE(3322721000000;B5));"10";SI(ESTNUM(TROUVE(3322726000001;B5));"11";"HORS HMP"))
A+
Merci à vous deux pour votre temps et votre aide,

Job75, un grand merci pour votre formule qui marche parfaitement !!

Vous m'avez bien aidé,
merci encore
 

Discussions similaires

Statistiques des forums

Discussions
312 210
Messages
2 086 279
Membres
103 170
dernier inscrit
HASSEN@45