SOS erreur dans une formule excel avec des SI imbriqués
Résolu
Julius
-
Mike-31 Messages postés 18405 Date d'inscription Statut Contributeur Dernière intervention -
Mike-31 Messages postés 18405 Date d'inscription Statut Contributeur Dernière intervention -
A voir également:
- SOS erreur dans une formule excel avec des SI imbriqués
- Formule si et excel - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Mise en forme conditionnelle excel formule si - Guide
- Formule somme excel colonne - Guide
- Liste déroulante excel - Guide
4 réponses
Bonjour,
c'est ton texte qui doit être entre guillemet pas tes valeurs numérique
=SI('Bookinglist FSA'!H2="20ft DC";20;SI('Bookinglist FSA'!H2="40ft HCRF";40;SI('Bookinglist FSA'!H2="20ft RF";20;SI('Bookinglist FSA'!H2="40ft HC";40;SI('Bookinglist FSA'!H2="40ft DC";40;SI('Bookinglist FSA'!H2="Car in C.";"Car in C.";SI('Bookinglist FSA'!H2="Car";"Car";SI('Bookinglist FSA'!H2="Flatrack";"Flatrack";SI('Bookinglist FSA'!H2="40ft IMO";40;SI('Bookinglist FSA'!H2="20ft IMO";20;SI('Bookinglist FSA'!H2="Bulk";"Bulk")))))))))))
mais tu peux simplifier ta formule avec des SI(OU(
=SI(OU('Bookinglist FSA'!H2="20ft DC";'Bookinglist FSA'!H2="20ft RF";'Bookinglist FSA'!H2="20ft IMO");20;SI(OU('Bookinglist FSA'!H2="40ft HCRF";'Bookinglist FSA'!H2="40ft IMO";'Bookinglist FSA'!H2="40ft HC";'Bookinglist FSA'!H2="40ft DC");40;'Bookinglist FSA'!H2))
et si tu nommes ta cellule H2 onglet Bookinglist FSA par exemple FSA
ta formule devient
A+
Mike-31
Pas savoir n'est pas un échec, l'échec est le refus d'apprendre.
c'est ton texte qui doit être entre guillemet pas tes valeurs numérique
=SI('Bookinglist FSA'!H2="20ft DC";20;SI('Bookinglist FSA'!H2="40ft HCRF";40;SI('Bookinglist FSA'!H2="20ft RF";20;SI('Bookinglist FSA'!H2="40ft HC";40;SI('Bookinglist FSA'!H2="40ft DC";40;SI('Bookinglist FSA'!H2="Car in C.";"Car in C.";SI('Bookinglist FSA'!H2="Car";"Car";SI('Bookinglist FSA'!H2="Flatrack";"Flatrack";SI('Bookinglist FSA'!H2="40ft IMO";40;SI('Bookinglist FSA'!H2="20ft IMO";20;SI('Bookinglist FSA'!H2="Bulk";"Bulk")))))))))))
mais tu peux simplifier ta formule avec des SI(OU(
=SI(OU('Bookinglist FSA'!H2="20ft DC";'Bookinglist FSA'!H2="20ft RF";'Bookinglist FSA'!H2="20ft IMO");20;SI(OU('Bookinglist FSA'!H2="40ft HCRF";'Bookinglist FSA'!H2="40ft IMO";'Bookinglist FSA'!H2="40ft HC";'Bookinglist FSA'!H2="40ft DC");40;'Bookinglist FSA'!H2))
et si tu nommes ta cellule H2 onglet Bookinglist FSA par exemple FSA
ta formule devient
=SI(OU(FSA="20ft DC";FSA="20ft RF";FSA="20ft IMO");20;SI(OU(FSA="40ft HCRF";FSA="40ft IMO";FSA="40ft HC";FSA="40ft DC");40;FSA))
A+
Mike-31
Pas savoir n'est pas un échec, l'échec est le refus d'apprendre.
Re,
as tu testé les propositions également de l'ami Vaucluse que je salue et qui effectivement pourrait s'écrire encore plus court
=SI(NB.SI(FSA;"20*")>0;20;SI(NB.SI(FSA;"40*")>0;40;FSA))
A+
Mike-31
Pas savoir n'est pas un échec, l'échec est le refus d'apprendre.
as tu testé les propositions également de l'ami Vaucluse que je salue et qui effectivement pourrait s'écrire encore plus court
=SI(NB.SI(FSA;"20*")>0;20;SI(NB.SI(FSA;"40*")>0;40;FSA))
A+
Mike-31
Pas savoir n'est pas un échec, l'échec est le refus d'apprendre.
Mike 31 & Vaucluse, merci bcp. J'ai essayé la formule de Vaucluse ce matin est ça m'a permis de résoudre mon souci. Mais dans la continuité de mon tableau je ne sais pas l'appliqué donc j'ai revenir à ma formule(longue) pour continuer mais problème persiste. la voilà
=SI('Bookinglist FSA'!I3="40ft DC";"DC";SI('Bookinglist FSA'!I3="20ft DC";"DC";SI('Bookinglist FSA'!I3="40ft DC";"DC";SI('Bookinglist FSA'!I3="40ft HCRF";"HCRF";SI('Bookinglist FSA'!I3="20ft RF";"RF";SI('Bookinglist FSA'!I3="Car in C.";"Car in C.";SI('Bookinglist FSA'!I3="Car";"Car";SI('Bookinglist FSA'!I3="Flatrack";"Flatrack";SI('Bookinglist FSA'!I3="40ft IMO";"IMO";SI('Bookinglist FSA'!I3="20ft IMO";"IMO";SI('Bookinglist FSA'!I3="Bulk";"Bulk")))))))))))
et cette partie-ci 'Bookinglist FSA'!I3="40ft DC";"DC" contrairement à tous les autres donnes faux ou réecris 40ft HC au lieu de HC tout court.
en simplifiant peut etre que ca résoudra le problème mais je vois pas comment faire plus court.
=SI('Bookinglist FSA'!I3="40ft DC";"DC";SI('Bookinglist FSA'!I3="20ft DC";"DC";SI('Bookinglist FSA'!I3="40ft DC";"DC";SI('Bookinglist FSA'!I3="40ft HCRF";"HCRF";SI('Bookinglist FSA'!I3="20ft RF";"RF";SI('Bookinglist FSA'!I3="Car in C.";"Car in C.";SI('Bookinglist FSA'!I3="Car";"Car";SI('Bookinglist FSA'!I3="Flatrack";"Flatrack";SI('Bookinglist FSA'!I3="40ft IMO";"IMO";SI('Bookinglist FSA'!I3="20ft IMO";"IMO";SI('Bookinglist FSA'!I3="Bulk";"Bulk")))))))))))
et cette partie-ci 'Bookinglist FSA'!I3="40ft DC";"DC" contrairement à tous les autres donnes faux ou réecris 40ft HC au lieu de HC tout court.
en simplifiant peut etre que ca résoudra le problème mais je vois pas comment faire plus court.
Re,
dans ta demande initiale tu souhaitais par exemple pour Bookinglist FSA'!I3="40ft DC"; afficher 40 et maintenant tu souhaites afficher DC
il faudrait savoir parce que ça change tout
alors comme je te le conseillais commence par nommer ta cellule I3 qui elle aussi a changée d'adresse onglet Bookinglist
pour cela active cette cellule et Gestionnaire de nom/ définir ou directement dans la barre d'adresse la nommer FSA ce qui écourtera énormément la formule et allègera ton fichier d’où un meilleur fonctionnement
ensuite utilise cette formule
dans ta demande initiale tu souhaitais par exemple pour Bookinglist FSA'!I3="40ft DC"; afficher 40 et maintenant tu souhaites afficher DC
il faudrait savoir parce que ça change tout
alors comme je te le conseillais commence par nommer ta cellule I3 qui elle aussi a changée d'adresse onglet Bookinglist
pour cela active cette cellule et Gestionnaire de nom/ définir ou directement dans la barre d'adresse la nommer FSA ce qui écourtera énormément la formule et allègera ton fichier d’où un meilleur fonctionnement
ensuite utilise cette formule
=SI(OU(NB.SI(FSA;"20*")>0;NB.SI(FSA;"40*")>0);STXT(FSA;TROUVE(" ";FSA;1)+1;10);FSA)
et salut Mike
je pense qu'il est encore possible de raccourcir (d'après ta formule avec la cellule nommée), soit:
=SI(NB.SI(FSA;"20 ft*");20;SI(NB.SI(FSA;"40 ft*");40;FSA)
ou encore:
=SI(OU(GAUCHE(FSA;2)="40";GAUCH(FSA;2)="20");GAUCHE(FSA;2);FSA)
crdlmnt