Réduire le nombre d'arguments Formule SI

Résolu
masaugust Messages postés 1 Statut Membre -  
Raymond PENTIER Messages postés 58213 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour à tous,

J'ai la formule ci dessous que je n'arrive pas à valider dans Excel car le nombre d'argument est trop important. Pouvez vous m'aider à la reduire?

Je dois préparer mon dcument pour lundi. Ci dessous la formule.

=SI($AX$48="na";si($AV$48="na";si($AT$48="na";si($AR$48="na";si($AP$48="na";si($AN$48="na";si($AL$48="na";si($AJ$48="na";si($AH$48="na";si($AF$48="na";si($AD$48="na";si($AB$48="na";si($Z$48="na";si($X$48="na";SI($V$48="na";SI($T$48="na";SI($R$48="na";O11-M11;Q11-O11);S11-Q11);U11-S11);W11-U11);Y11-W11);AA11-Y11);AC11-AA11);AE11-AC11);AG11-AE11);AI11-AG11);AK11-AI11);AM11-AK11;);AO11-AM11);AQ11-AO11);AS11-AQ11);AU11-AS11);AW11-AU11)

Je vous remercie d'avance

7 réponses

  1. Raymond PENTIER Messages postés 58213 Date d'inscription   Statut Contributeur Dernière intervention   17 482
     
    Bonjour masaugust.

    Si ton prof a une version Excel 2007 ou ultérieure, ta formule passera (à condition d'ajouter les 16 parenthèses fermantes en fin de formule).
    Tu devrais te débarrasser de ta version 2003 ; elle est vraiment périmée et archaïque !
    Et étudie un peu cette fiche technique : https://forums.commentcamarche.net/forum/affich-37641581-utiliser-plus-de-7-imbrications-si-dans-une-formule

    Cordialement.
    0
    1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      Bonjour,

      Tu devrais te débarrasser de ta version 2003 ; elle est vraiment périmée et archaïque !
      Comment ça ?
      Pas du tout !!! Même s'il y a des apports avec 2007-2010, 2003 est loin d'être périmé. Bien sûr les tableau sont moins jolis...

      eric
      0
    2. masaugust
       
      Merci à vous pour votre retour.
      Par contre mon excel est une version de 2010. Donc elle n'est pas archaïque.

      Pouvez vous m'aider à simplifier ma formule svp? j'en ai vraiment besoin.

      Merci
      0
  2. JvDo Messages postés 1924 Date d'inscription   Statut Membre Dernière intervention   859
     
    Bonjour à tous,

    Pour aller dans le sens de la réduction du nombre de SI() mais peut-être pas dans celui de la simplification, voici une idée sur la base des 18 lignes de la table de vérité soustendue par ta formule :
    =DECALER($AW$11;0;-2*SOMMEPROD(--(GAUCHE(AX48&AV48&AT48&AR48&AP48&AN48&AL48&AJ48&AH48&AF48&AD48&AB48&Z48&X48&V48&T48&R48;2*LIGNE($1:$17))=REPT("na";LIGNE($1:$17)))))-DECALER($AU$11;0;-2*SOMMEPROD(--(GAUCHE(AX48&AV48&AT48&AR48&AP48&AN48&AL48&AJ48&AH48&AF48&AD48&AB48&Z48&X48&V48&T48&R48;2*LIGNE($1:$17))=REPT("na";LIGNE($1:$17)))))
    Cette formule est à valider par CTRL+MAJ+ENTER puisqu'elle est matricielle.

    Pour des besoins de test, j'ai mis un $ devant le 11 de $AW$11 et $AU$11. Il faudra l'enlever s'il faut recopier cette formule vers le bas.

    Cordialement
    0
  3. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
     
    Bonjour
    Après test, Excel ne semble pas admettre que votre formule est 18 solutions pour 17 SI.
    Une fois supprimée la dernière opération il accepte la formule, à condition aussi de rajouter une parenthèse derrière le 1° calcul O11-M11

    crdlmnt

    Errare humanum est, perseverare diabolicum
    0
  4. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour à tous,

    à condition qu'il n'y ait pas de "na" sur les colonnes impaires sinon il faudra compléter :
    =INDIRECT(ADRESSE(11;MAX((R48:AX48="na")*COLONNE(R48:AX48))-1))-INDIRECT(ADRESSE(11;MAX((R48:AX48="na")*COLONNE(R48:AX48))-3))
    formule matricielle à valider avec shift+ctrl+entrée
    https://www.cjoint.com/?CIhmobGhlwo

    eric

    Jamais tu ne répondras à un mp non sollicité...
    Bon, ça c'est fait.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. masaugust
     
    Bonjour à tous,

    Merci je vais essayer les formules.

    Je vous les confirmerai.

    Encore merci
    0
  7. Raymond PENTIER Messages postés 58213 Date d'inscription   Statut Contributeur Dernière intervention   17 482
     
    Bonjour masaugust.

    Je viens de repérer, après une énième vérification de ta formule, ce qui a provoqué l'affichage du message d'erreur "le nombre d'argument est trop important", message qui m'a fait croire que c'était à cause du nombre de SI, et donc que tu utilisais la version 2003 :

    à la fin de ta formule, il y a un point-virgule de trop (entre AK11 et AO11) :
    ... AM11-AK11 ; );AO11-AM11);AQ11-AO11);AS11-AQ11);AU11-AS11);AW11-AU11)
    Tu le supprimes et ta formule marche !
    0
  8. masaugust
     
    Super ça marche.

    Merci beaucoup Raymond

    Je vais qu'en même essayer les autres formules que je ne maîtrises pas afin d'enrichir mes connaissances.

    merci à vous tous
    0
    1. Raymond PENTIER Messages postés 58213 Date d'inscription   Statut Contributeur Dernière intervention   17 482
       
      Tu as reçu des solutions très performantes. Tu peux t'en féliciter.
      Comme tu dis vouloir enrichir tes connaissances, je voulais illustrer pour toi l'une des méthodes (exemple 1) figurant dans la fiche technique que je t'ai signalée dans mon post #1, et qui a été conçue par notre ami Mike-31 :
      https://www.cjoint.com/c/CIjcyp5cupQ

      Si un jour tu dois travailler sur une ancienne version d'Excel, cela pourra t'aider.
      0