Formule complexe avec plusieurs arguments

Résolu
Bonjour les pros d'Excel,

Je dois produire rapidement un fichier Excel permettant de déterminer la priorité selon plusieurs critères. J'ai seulement réussi avec la priorité 1. À la priorité 2, j'ai l'erreur #valeur. Est-ce que j'oublie un ";" et/ou des parenthèses, etc...??

Je dois poursuivre la formule avec 7 autres critères pour un total de 9 priorités.

Je crois qu'Excel me renverra que j'ai trop d'arguments pour cette formule".

Comment m'en sortir?

Je joins mon fichier Excel et ma liste d'arguments à bâtir.

Merci beaucoup à l'avance pour votre support!

Fichier Excel : https://www.cjoint.com/c/KAlpkEyWiMr
Fichier avec arguments : https://www.cjoint.com/c/KAlpmCTVUir

8 réponses

  1. Bonjour Oceanik

    Personnellement je passerai par un tableau annexe des 9 priorités (les colonnes pouvant être masquées ensuite) et en colonne A une simple formule pour relever la priorité inférieure parmi celles possibles
    https://www.cjoint.com/c/KAlq5ua72c1

    J'ai mis les formules pour les priorités 1, 2 et 3, à toi de poursuivre

    Il serait très utile aussi de mettre des listes déroulantes pour tous les choix dans ton tableau de base car une erreur de frappe ou un mot mal orthographié empêchera les formules de fonctionner correctement

    Cdlmnt
    Via
    1
    1. Merci beaucoup! Beau travail! Je vais essayer de poursuivre ça. Je pensais que je pouvais utiliser le si.multiple ou le si.condition mais je n'y arrive pas sous 365 et impossible en Excel 2013.

      Encore MERCI!
      0
  2. Contributeur
    Bonjour Oceanik.

    Observation liminaire : Dans la ligne contenant les intitulés de colonnes (noms de champs), il est pratique, et lisible, de mettre des expressions et des phrases, comme "Milieu a été en éclosion?" en I1 ...
    L'ennui, c'est qu'on finit par obtenir des formules à rallonge qui, elles, sont illisibles, comme
    =SI(ET([@Catégorie]="Semi-autonome";OU([@[Si "Oui"Type d''unité]]="Cognitive";[@[Milieu vulnérable]]="Oui");[@[EnjeuPCI]]="Oui";OU([@[Quelle(s) vague(s)]]="Vague 1";[@[Quelle(s) vague(s)]]="Vagues 1 et 2");[@[Ressource problématique]]="Oui");"P1";SI(ET([@Catégorie]="Semi-autonome";OU([@[Si "Oui"Type d''unité]]="Cognitive";[@[Milieu vulnérable]]="Oui");OU([@[EnjeuPCI]]="Oui";[@[Ressource problématique]]="Oui";OU([@[Quelle(s) vague(s)]]="Vague 1";[@[Quelle(s) vague(s)]]="Vagues 1 et 2"));"P2");"")) en A2 !

    Je te suggère de faire ceci :
    - Copier, en ligne 1
    - Insérer les cellules copiées, en A2
    - Insérer une ligne vide entre les lignes 1 et 2
    (pour bien délimiter le tableau de calcul)
    - Remplacer les contenus de la nouvelle ligne 3 par
    Pr/Cat/RLS/Rive/PUF/Type/Nb/Enj/écl/Vag/Vuln/Ress
    Ta formule est devenue :
    =SI(ET([@Cat]="Semi-autonome";OU([@Type]="Cognitive";[@Vuln]="Oui");[@Enj]="Oui";OU([@Vag]="Vague 1";[@Vag]="Vagues 1 et 2");[@Ress]="Oui");"P1";SI(ET([@Cat]="Semi-autonome";OU([@Type]="Cognitive";[@Vuln]="Oui");OU([@Enj]="Oui";[@Ress]="Oui";OU([@Vag]="Vague 1";[@Vag]="Vagues 1 et 2"));"P2");""))
    ce qui est quand même plus sympathique (305 caractères au lieu de 500 ) ...
    1
    1. Bel astuce! Merci du conseil!
      0
  3. Contributeur
    ... (suite 2)

    On ne peut pas se lancer dans une formule à rallonge comme celle que tu as commencé à saisir, qui ferait plus de 2000 caractères, et que tu n'arriverais pas à vérifier ni adapter !
    Je confirme que c'est bien la technique de via55 qu'il faut utiliser.
    1
    1. Oui, c’est le conseil que j’ai suivi.
      0
  4. Contributeur
    Autre précision à nous fournir :
    Priorité 6, ligne 2, on est censé voir un "ou" après le mot "éclosion" ?

    Si c'est le cas, saisir les formules suivantes :
    en M4 =1*ET([Cat]="Semi-autonome"; OU([Type]="cognitive";[Vuln]="oui"); [Enj]="oui"; OU([Vag]="vague 1";[Vag]="vagues 1 et 2"); [Ress]="oui")
    en N4 =1*ET([Cat]="Semi-autonome"; OU([Type]="cognitive";[Vuln]="oui"); OU([Enj]="oui"; [Vag]="vague 1";[Vag]="vagues 1 et 2";[Ress]="oui"); [@Pr1]=0)
    en O4 =1*ET([Cat]="Semi-autonome"; OU([Type]="cognitive"; [Vuln]="oui"); OU([Enj]="oui";[Vag]="vague 2";[Ress]="oui"); [@Pr1]+[@Pr2]=0)
    en P4 =1*ET([Cat]="Semi-autonome"; [Type]="physique"; OU([Enj]="oui";[Vag]="Vagues 1 et 2";[Vag]="vague 1";[Ress]="oui"); [@Pr1]+[@Pr2]+[@Pr3]=0)
    en Q4 =1*ET([Cat]="Semi-autonome"; [Type]="physique"; OU([Enj]="oui";[Vag]="vague 2";[Ress]="oui"); [@Pr1]+[@Pr2]+[@Pr3]+[@Pr4]=0)
    en R4 =1*ET([Cat]="Semi-autonome"; OU([écl]="oui";[Vag]<>""); OU([Enj]="oui";[Ress]="oui"); [@Pr1]+[@Pr2]+[@Pr3]+[@Pr4]+[@Pr5]=0)
    en S4 =1*ET([Cat]="Semi-autonome"; OU([Enj]="oui";[Ress]="oui"); [@Pr1]+[@Pr2]+[@Pr3]+[@Pr4]+[@Pr5]+[@Pr6]=0)
    en T4 =1*ET(OU([Enj]="oui";[Ress]="oui"); [@Pr1]+[@Pr2]+[@Pr3]+[@Pr4]+[@Pr5]+[@Pr6]+[@Pr7]=0)
    en U4 =1*([@Pr1]+[@Pr2]+[@Pr3]+[@Pr4]+[@Pr5]+[@Pr6]+[@Pr7]+[@Pr8]=0)
    Le tableau qui récapitule ces formules indique que les priorités 6 à 9 ne sont jamais atteintes ...
    Tu devras continuer à tester les différentes combinaisons, et apporter les correctifs indispensables.
    https://www.cjoint.com/c/KAorGDKQiMA


    1
    1. Merci M. Pentier pour votre support. C’est grandement apprécié.
      0
  5. Contributeur
    Salut.

    Ta précision du post #10 m'a permis de rectifier ma formule pour la priorité 6, qui devient
    en R4 =1*ET([Cat]="Semi-autonome"; OU([Vag]="Vague 1";[Vag]="Vague 2";[Vag]="Vagues 1 et 2"); OU([Enj]="oui";[Ress]="oui"); [@Pr1]+[@Pr2]+[@Pr3]+[@Pr4]+[@Pr5]=0)
    Tableau des formules
    Diagramme des contraintes
    J'attends tes demandes de modification, et éventuellement tes compléments de conditions pour les priorités supérieures à 2 ...
    1
    1. Avec vos précieux conseils, j’ai réussi à fournir un outil qui répond au besoin. Merci encore à tous!
      0
  6. J'ai réussi à trouver mon erreur pour la priorité 2.

    Maintenant, je dois savoir quelle fonction utilisée pour joindre toutes mes priorités par ordre d'importance (P1 à P9)?

    Je suis de base sous Excel 2013 mais j'ai aussi Microsoft 365.

    Merci!
    0
    1. Contributeur
      ... (suite)

      Pour nous éviter des erreurs et des pertes de temps, peux-tu préciser :
      Dans ton tableau Excel, la liste déroulante de cellule pour la colonne E propose "Oui" et "Non".
      Mais ta liste PDF de description des priorités stipule "Présence unité fermée cognitive / physique", ces valeurs étant réservées au champ "Si oui type d'unité" !!!
      Qu'en est-il ?
      0
      1. Contributeur
        De même, il semble y avoir confusion entre les champs "éclosion" et "quelle(s) vague(s)" !
        Veux-tu nous éclairer ?
        0
      2. En effet, si c’est oui pour éclosion, il faut préciser la vague.
        0
      3. Si unité fermée est oui, il faut préciser le type.
        0
    2. Contributeur


      Quand j'ai fini par poster mon message #14,
      j'ai vu que tu avais envoyé tes précisions #10
      et #12.
      Je suis en train de représenter les diagrammes exprimant tes conditions ; je finirai demain ...
      Là, j'ai sommeil !

      Mais voici déjà un exemple :
      0