Excel, fonction ET ou autre alternative.

Résolu/Fermé
Marlj - 1 juil. 2011 à 16:53
 Marlj - 1 juil. 2011 à 21:26
Bonjour,

Je fais un horaire sur Excel 2007. Je vais essayer de bien expliquer mon problème.

Dans ma feuille j'ai 4 horaires (4 années). J'ai plusieurs professeurs. Chaque cours a un numéro. Un professeur donne plus d'un cours dans chacune des années.

J'ai une colonne par professeur avec chacune une couleur (Marc en jaune, Paul en rouge, etc.) et sous chaque colonne il y a le numéro de cours donné par le professeur pour chaque année.

Je fais l'horaire de l'élève. J'ai fait une mise en forme conditionnelle. Quand je mets un numéro du cours dans l'horaire (ex. lundi 1re période), la couleur du prof qui donne ce cours se met automatiquement... ça, ça va.

Maintenant, je veux faire l'horaire du prof. Par exemple, je fais l'horaire de Marc. J'ai réussis avec une formule SI a aller chercher dans les 4 horaires le numéro de cours donné par Marc seulement avec cette formule :
=SI(NB.SI($AE$64:$AE$98;C66);C66;SI(NB.SI(AE120:AE154;C122);C122;SI(NB.SI(AE176:AE210;C178);C178;SI(NB.SI(AE232:AE266;C234);C234;"")))). Autrement dit, pour le 1er groupe, si l'élément de la cellule C66 (lundi 1er période) se retrouve dans la liste de AE64 à AE98 (marc 1re année), met ce qui est dans la cellule C66, sinon met rien, etc. pour les 4 groupes. Ça, ça marche.

Question :Comme un prof ne peut donner 2 cours en même temps, je veux que si j'ai mis un cours à un même professeur à la même période dans plus d'un groupe (exemple lundi 1re période dans le groupe 1 et le groupe 3), ça m'avertisse. Je réussis avec une mise en forme conditionnelle, mais ça marche quand je le fais pour 2 horaires, mais pas plus. Voici la formule que j'ai mise pour la MFC :
=ET(NB.SI($AE$63:$AE$97;C65);NB.SI($AE$121:$AE$155;C123)). Ça, ça marche, mais dès que je rajoute le 3e horaire, ça ne marche plus. Est-ce que la Fonction ET ne marche que pour 2 éléments?

Est-ce que je passe par Ottawa pour aller à Québec????


A voir également:

2 réponses

Raymond PENTIER Messages postés 58789 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 1 janvier 2025 17 260
1 juil. 2011 à 18:25
Je n'ai jamais essayé dans la mise en forme conditionnelle, mais les fonctions ET, NON, OU acceptent habituellement de multiples arguments.
Tu pourrais donc utiliser une colonne de travail avec tes fonctions ET, puis utiliser le résultat pour activer la mise en forme conditionnelle.
0
Je crois que je viens de trouver pourquoi. Comme j'ai mis un ET, quand je met une troisième condition, il faut que les 3 conditions soient là pour que ce soit vrai. Moi je veux que dès que j'en ai 2, ça me l'indique. Cependant si je le fais avec OU, dès qu'il y en a un, ca dit vrai. Avez-vous une idée? Dois-je imbriqué des OU et des ET!
0
J'ai effectivement trouvé avec des OU et des ET. Et effectivement je l'ai fait avec la fonction puis je l'ai transposé dans la MFC. Il a fallut que je fasse gr1;gr2 et gr1;gr2 et gr1;gr3 et gr1;gr4 et gr2;gr3, etc.

Merci
0
ccm81 Messages postés 10905 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 27 décembre 2024 2 428
1 juil. 2011 à 20:54
bonsoir

juste une idée en passant, je ne sais pas ce que renvoie NB.SI($AE$63:$AE$97;C65), mais si c'est 1 ou 0, un test sur la somme des NB.SI par exemple
NB.SI($AE$63:$AE$97;C65)+NB.SI($AE$121:$AE$155;C123)+NB.SI( .... ) > 1
pourrait convenir

bonne suite
0