Formule complexe avec plusieurs arguments

Résolu
Oceanik. Messages postés 65 Statut Membre -  
 Oceanik -
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. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    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. Oceanik. Messages postés 65 Statut Membre
       
      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. Raymond PENTIER Messages postés 58216 Date d'inscription   Statut Contributeur Dernière intervention   17 482
     
    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. Oceanik. Messages postés 65 Statut Membre
       
      Bel astuce! Merci du conseil!
      0
  3. Raymond PENTIER Messages postés 58216 Date d'inscription   Statut Contributeur Dernière intervention   17 482
     
    ... (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. Oceanik. Messages postés 65 Statut Membre
       
      Oui, c’est le conseil que j’ai suivi.
      0
  4. Raymond PENTIER Messages postés 58216 Date d'inscription   Statut Contributeur Dernière intervention   17 482
     
    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. Oceanik. Messages postés 65 Statut Membre
       
      Merci M. Pentier pour votre support. C’est grandement apprécié.
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Raymond PENTIER Messages postés 58216 Date d'inscription   Statut Contributeur Dernière intervention   17 482
     
    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. Oceanik
       
      Avec vos précieux conseils, j’ai réussi à fournir un outil qui répond au besoin. Merci encore à tous!
      0
  7. Oceanik. Messages postés 65 Statut Membre
     
    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
  8. Raymond PENTIER Messages postés 58216 Date d'inscription   Statut Contributeur Dernière intervention   17 482
     
    ... (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. Raymond PENTIER Messages postés 58216 Date d'inscription   Statut Contributeur Dernière intervention   17 482
       
      De même, il semble y avoir confusion entre les champs "éclosion" et "quelle(s) vague(s)" !
      Veux-tu nous éclairer ?
      0
    2. Oceanik. Messages postés 65 Statut Membre
       
      En effet, si c’est oui pour éclosion, il faut préciser la vague.
      0
    3. Oceanik. Messages postés 65 Statut Membre
       
      Si unité fermée est oui, il faut préciser le type.
      0
  9. Raymond PENTIER Messages postés 58216 Date d'inscription   Statut Contributeur Dernière intervention   17 482
     


    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