Intégrer SI - ET - OU dans une même formule

Résolu/Fermé
Charly - 21 janv. 2014 à 21:55
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 23 janv. 2014 à 07:55
Bonjour,

J'ai ABSOLUMENT besoin d'intégrer dans une seule et même formule les fonctions SI - ET - OU.

Voici à quoi ressemble ma formule pour le moment :

=SI(ET(datecalendrier=daterésa;heurecalendrier>=heuredébut;heurecalendrier<heurefin);SI(OU(matrice=1;matrice=2;matrice=3;matrice=4;matrice=5);"non disponible");"libre")

Tel quel, impossible de la faire fonctionner...Si je change un paramètre pour qu'il soit "faux" (pour tester ma formule), le résultat ne change pas!!!!

Quelqu'un aurait une solution?

5 réponses

Bonsoir,
Pour répondre clairement faudrait-il encore qu'on comprenne ce que tu as voulu faire.
Je reprends en découpant ta simili équation.
La forme SI(...;...;...) se comprend Si(A vrai;Alors B vrai; B faux) ou encore Si(A vrai; B =1; sinon B=0)
Tu écris en clair:
SI ((datecalendrier=daterésa) ET (heurecalendrier>=heuredébut) ET (heurecalendrier < heurefin);
alors SI ((matrice=1) OU (matrice=2) OU (matrice=3) OU (matrice=4) OU (matrice=5); alors "non disponible" ; sinon "libre"))

Tu ajoutes:"Si je change un paramètre pour qu'il soit "faux" (pour tester ma formule), le résultat ne change pas!!!! "
Mais tu ne dis pas quel paramètre tu changes, ni quel résultat tu obtiens qui reste invariant alors qu'il ne devrait pas.
Moi, tel que c'est écrit, je comprends qu'il suffirait de mettre:
- soit datecalendrier <> daterésa
- soit heurecalendrier< heuredébut
- soit heurecalendrier >= heurefin
pour que la 1ère proposition soit fausse dans son ensemble et donc que TOUTE l'équation te donne pour résultat FAUX.
Par contre si la première proposition est exacte, alors il faut que toutes les propositions du type "Matrice=?" soient fausses en même temps, càd "matrice >5" pour que l'équation entière t'affiche "LIBRE".
Bonne suite.
0
Raymond PENTIER Messages postés 58720 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 10 novembre 2024 17 233
Modifié par Raymond PENTIER le 22/01/2014 à 05:59
Bonjour Charly.

Il manque un argument dans ta formule :
=SI(ET(test1;test2;test3);SI(OU(test4;test5;test6;test7;test8);vrai);faux)
qui est fausse, la syntaxe n'étant pas respectée ; il faut écrire :
=SI(ET(test1;test2;test3);SI(OU(test4;test5;test6;test7;test8);vrai2;faux2);faux1)
ou bien, selon la logique du raisonnement (que nous ignorons) :
=SI(ET(test1;test2;test3);vrai1;SI(OU(test4;test5;test6;test7;test8);vrai2;faux2))


C'est bien, la retraite ! Surtout aux Antilles ... :-)
☻ Raymond ♂
0
La logique, en français, est la suivante :
Si ma date sur ma fiche de réservation se trouve dans mon planning et que ma plage horaire de mon planning est supérieur ou égal a mon heure début et que ma plage horaire de mon planning est inférieur à mon horaire de fin et que ma matrice de mon planning contient 1 ou 2 ou 3 ou 4 ou 5 alors afficher "non disponible" sinon affiché "libre".

C'est un planning de réservation de salle de réunion. Sur une feuille de mon classeur Excel j'ai ma fiche de réservation et sur une autre feuille mon planning mensuel. Tout mon planning est automatisé, la personne n'a qu'à remplir sa fiche de réservation et cliquer sur un bouton pour enregistrer sa résa. Il ne me manque plus qu'à créer une alerte (d'où ma formule ci-dessus) pour que si la personne souhaite réserver un créneau déjà prit, "non disponible" s'affiche.

Si quelqu'un connait une macro,ça peut faire aussi l'affaire.
0
Bonsoir,
"Si je change un paramètre pour qu'il soit "faux" (pour tester ma formule), le résultat ne change pas!!!! "
Mais tu ne dis pas quel paramètre tu changes, ni quel résultat tu obtiens qui reste invariant alors qu'il ne devrait pas.


Désolé, mais tu n'as pas répondu à la question. Pas plus que tu ne dis si nos remarques (de RaymondPentier que je salue, et moi-même) t'ont aidé à y voir plus clair et éventuellement avancer dans la recherche de la solution.
Tu nous donnes des précisions sur le contexte du problème mais aucun élément nouveau sur le problème lui-même.
A plus tard.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
23 janv. 2014 à 07:55
Bonjour

Pour tenter d'^tre concret mets tes documents en pièce jointe:

pour joindre une pièce
mettre le classeur sans données confidentielles en pièce jointe sur
https://www.cjoint.com/
puis copier l'adresse du lien et la coller dans le message de réponse

0