Formule renvoyant systématiquement #ERROR Erreur d'analyse de la formule
Bonjour,
Étant débutant sur Google Sheet, j'ai bien du mal à configurer mes premières formules...
Ci-dessous, la consigne que j'ai envoyé à ChatGPT pour qu'il m'aide à trouver la formule adaptée sur Sheet (sans succès malgré plusieurs tentatives comme par exemple essayer de tout mettre sur une seule ligne) :
La colonne R doit recevoir une note en pourcentage (avec deux décimales après la virgule), basée sur plusieurs critères dans d'autres colonnes.
Voici ces critères : Si, sur la même ligne,
le texte de D contient le mot « Oui », il faut ajouter 10 points. Et si le texte en D contient le mot « Non », ni ajout ni perte de points ;
Si le texte en E contient le mot « Oui », alors ajouter 10 points. Et si le texte de E contient le mot « Non », enlever 10 points ;
Si le texte de F contient le mot « Oui », ajouter 10 points. Et si le texte de F contient le mot « Non », enlever 10 points ;
Si le texte de G contient le mot « Oui », ajouter 10 points. Et si le texte en G contient le mot « Non », ni ajout ni retrait de points ;
Si le texte en I contient le mot « Oui », alors ajouter 10 points. Si le texte de I contient le mot « Non », 10 points sont retirés ;
Si le texte de J contient le mot « Oui », 10 points sont ajoutés. Si le texte en J contient le mot « Non », enlever 10 points ;
Si le texte en K contient le mot « 24 » ou « 48 », ajouter 10 points. Et si le texte de K contient le mot « 72 » ou « plus de 72 », enlever 10 points ;
Si le texte de L contient le mot « 24 » ou « 48 » ou « 72 », ajouter 10 points. Et si le texte de L contient le mot '96' ou 'plus de 96', enlever 10 points ;
Si le texte de M contient le mot 'Oui', ajouter 10 points. Et si le texte de M contient le mot « Non », enlever 10 points ;
Si le texte en N contient le mot « Oui », ajoutez 10 points. Et si le texte en N contient le mot 'Non', enlever 10 points ;
Si le texte en O contient le mot 'Oui', ajouter 10 points. Et si le texte de O contient le mot 'Non', enlever 10 points ;
Et enfin : Si le texte de P contient le mot 'Oui', ajouter 10 points. Et si le texte de P contient le mot 'Non', enlevez 10 points.
Voici la formule qu'il a proposé :
=ROUNDUP(
(
IF(ISNUMBER(SEARCH("Oui", D2)), 10, 0) +
IF(ISNUMBER(SEARCH("Oui", E2)), 10, IF(ISNUMBER(SEARCH("Non", E2)), -10, 0)) +
IF(ISNUMBER(SEARCH("Oui", F2)), 10, IF(ISNUMBER(SEARCH("Non", F2)), -10, 0)) +
IF(ISNUMBER(SEARCH("Oui", G2)), 10, 0) +
IF(ISNUMBER(SEARCH("Oui", I2)), 10, IF(ISNUMBER(SEARCH("Non", I2)), -10, 0)) +
IF(ISNUMBER(SEARCH("Oui", J2)), 10, IF(ISNUMBER(SEARCH("Non", J2)), -10, 0)) +
IF(OR(ISNUMBER(SEARCH("24", K2)), ISNUMBER(SEARCH("48", K2))), 10, IF(OR(ISNUMBER(SEARCH("72", K2)), ISNUMBER(SEARCH("plus de 72", K2))), -10, 0)) +
IF(OR(ISNUMBER(SEARCH("24", L2)), ISNUMBER(SEARCH("48", L2)), ISNUMBER(SEARCH("72", L2))), 10, IF(OR(ISNUMBER(SEARCH("96", L2)), ISNUMBER(SEARCH("plus de 96", L2))), -10, 0)) +
IF(ISNUMBER(SEARCH("Oui", M2)), 10, IF(ISNUMBER(SEARCH("Non", M2)), -10, 0)) +
IF(ISNUMBER(SEARCH("Oui", N2)), 10, IF(ISNUMBER(SEARCH("Non", N2)), -10, 0)) +
IF(ISNUMBER(SEARCH("Oui", O2)), 10, IF(ISNUMBER(SEARCH("Non", O2)), -10, 0)) +
IF(ISNUMBER(SEARCH("Oui", P2)), 10, IF(ISNUMBER(SEARCH("Non", P2)), -10, 0))
) / 120
, 2)
Je ne sais même pas si dans sa proposition, chaque condition spécifique a bien été respectée, comme le fait que certains "Non" ne doivent avoir aucun effet sur le nombre de points.
Moi qui dans le cadre de mon nouveau travail, ai besoin de développer différents templates Google Sheet, avec des formules complexes pré-configurées comme celle-ci, je suis bien embêté depuis tout aujourd'hui 🤧. Alors je serai grandement reconnaissant aux meilleurs connaisseurs que moi qui pourraient m'aider à résoudre ce qui cloche !
Il n'est pas impossible que je fasse appel à vous plusieurs fois durant les prochaines semaines ! Un grand merci d'avance et une bonne soirée à tous.
Bonsoir Alex,
As-tu essayé de remplacer les ", " par des ";" ?
Cordialement,
Fil.
Bonsoir Fil, merci pour ta réponse !
Je viens d'essayer, avec la formule mise à jour comme suit :
=ROUNDUP(
(
IF(ISNUMBER(SEARCH("Oui"; D2)); 10; 0) +
IF(ISNUMBER(SEARCH("Oui"; E2)); 10; IF(ISNUMBER(SEARCH("Non"; E2)); -10; 0)) +
IF(ISNUMBER(SEARCH("Oui"; F2)); 10; IF(ISNUMBER(SEARCH("Non"; F2)); -10; 0)) +
IF(ISNUMBER(SEARCH("Oui"; G2)); 10; 0) +
IF(ISNUMBER(SEARCH("Oui"; I2)); 10; IF(ISNUMBER(SEARCH("Non"; I2)); -10; 0)) +
IF(ISNUMBER(SEARCH("Oui"; J2)); 10; IF(ISNUMBER(SEARCH("Non"; J2)); -10; 0)) +
IF(OR(ISNUMBER(SEARCH("24"; K2)); ISNUMBER(SEARCH("48"; K2))); 10; IF(OR(ISNUMBER(SEARCH("72"; K2)); ISNUMBER(SEARCH("plus de 72"; K2))); -10; 0)) +
IF(OR(ISNUMBER(SEARCH("24"; L2)); ISNUMBER(SEARCH("48"; L2)); ISNUMBER(SEARCH("72"; L2))); 10; IF(OR(ISNUMBER(SEARCH("96"; L2)); ISNUMBER(SEARCH("plus de 96"; L2))); -10; 0)) +
IF(ISNUMBER(SEARCH("Oui"; M2)); 10; IF(ISNUMBER(SEARCH("Non"; M2)); -10; 0)) +
Mais ça n'a pas marché, même problème
Je viens de réessayer après m'être aperçu qu'il manquait la fin de la formule. Cette fois-ci, j'ai obtenu "0" à la place du #ERROR. Ce qui n'est pas normal non plus
Tu es bien allé jusqu'à la fin de la formule ? 🤔
Là, elle n'est pas complète...
Nos réponses se sont croisées !
Essaie de poster un fichier exemple, je regarderai ça demain... 😉
Voici le fichier exemple, un grand merci à toi !
Il y manque la formule en question, je l'avais supprimée du coup je te laisserai t'y référer dans mes messages précédents. C'est en R2 :)
Petite question avant d'aller plus loin, la casse est-elle importante ?
Si le texte contient "Oui" ou "oui", c'est la même chose ou pas ?
Voilà une solution, si j'ai bien compris ta demande (en R2 et à copier vers le bas) :
=(if(REGEXMATCH(D2;"(?i)oui")=true;10;"")+if(REGEXMATCH(E2;"(?i)oui")=true;10;if(REGEXMATCH(E2;"(?i)non")=true;-10;""))+if(REGEXMATCH(F2;"(?i)oui")=true;10;if(REGEXMATCH(F2;"(?i)non")=true;-10;""))+if(REGEXMATCH(G2;"(?i)oui")=true;10;"")+if(REGEXMATCH(I2;"(?i)oui")=true;10;if(REGEXMATCH(I2;"(?i)non")=true;-10;""))+if(REGEXMATCH(J2;"(?i)oui")=true;10;if(REGEXMATCH(J2;"(?i)non")=true;-10;""))+if(or(K2=24;K2=48);10;if(or(K2=72;K2="plus de 72");-10;""))+if(or(L2=24;L2=48;L2=72);10;if(or(L2=96;L2="plus de 96");-10;""))+if(REGEXMATCH(M2;"(?i)oui")=true;10;if(REGEXMATCH(M2;"(?i)non")=true;-10;""))+if(REGEXMATCH(N2;"(?i)oui")=true;10;if(REGEXMATCH(N2;"(?i)non")=true;-10;""))+if(REGEXMATCH(O2;"(?i)oui")=true;10;if(REGEXMATCH(O2;"(?i)non")=true;-10;""))+if(REGEXMATCH(P2;"(?i)oui")=true;10;if(REGEXMATCH(P2;"(?i)non")=true;-10;"")))/120En S2 :
=arrayformula(if(R2:R<>"";if(R2:R>=0;"Oui";"Non");""))https://docs.google.com/spreadsheets/d/1JSNhAoWbBX42f9_F_Vh2yv1iR9GLXWS0h7QfdENIKfE/edit?usp=sharing
Cordialement,
Fil.
Bonjour Fil, merci infiniment pour ton investissement !!
Pour répondre à ta question, non la casse ne doit pas être importante : que l'on marque "oui" ou "Oui" doit fonctionner dans les deux cas.
Aussi, il est important que la condition utilisée ne soit pas "La cellule/le texte est exactement" mais juste "La cellule/le texte contient" (ce mot parmi d'autres), car même si ça n'est pas illustré dans le fichier-exemple, on devra parfois répondre "Oui quelque chose" ou "Non quelque chose". Peux-tu me confirmer ce point ?
Je teste ton fichier dès que possible dans l'après-midi. Encore merci ! 😃
J'ai 2 autres remarques :
- La dernière colonne (Décision finale) n'a normalement en tout cas je pense, pas besoin de formule car son contenu est à compléter par nous manuellement, sans influence des autres colonnes.
- Que puis-je ajouter à ta formule R, pour que le résultat de la division par 120 soit transformé en un pourcentage à deux décimales après la virgule ? (Exemple : 86,72 %)
J'espère ne pas trop t'en demander ! 🤔
Quel imb*cile ! Je viens de voir que le pourcentage c'est déjà bon, autant pour moi