Excel: fonction "si" à plusieurs critère
urcata
-
en2mots -
en2mots -
Bonjour,
Je dois créer une formule sur excel qui prend en compte plusieurs critères. J'ai utilisé la fonction "si", mais vu que le nombre de "si" dépasse 7, la formule ne fonctionne pas.
Lorsque j'essaie de la simplifier avec des "ou", la formule m'affiche vrai.
Concrètement, voila, la formule que j'ai écrite:
SI(A2>0;A2;SI(A3>0;A3;SI(A4>0;A4;SI(A5>0;A5;SI(A6>0;A6;SI(A7>0;A7;SI(A8>0;A8;SI(A9>0;A9;SI(A10>0;A10;SI(A11>0;A11;A12))))))))))
Ma question est de savoir comment la simplifier pour qu'elle fonctionne.
Merci d'avance pour votre aide.
Je dois créer une formule sur excel qui prend en compte plusieurs critères. J'ai utilisé la fonction "si", mais vu que le nombre de "si" dépasse 7, la formule ne fonctionne pas.
Lorsque j'essaie de la simplifier avec des "ou", la formule m'affiche vrai.
Concrètement, voila, la formule que j'ai écrite:
SI(A2>0;A2;SI(A3>0;A3;SI(A4>0;A4;SI(A5>0;A5;SI(A6>0;A6;SI(A7>0;A7;SI(A8>0;A8;SI(A9>0;A9;SI(A10>0;A10;SI(A11>0;A11;A12))))))))))
Ma question est de savoir comment la simplifier pour qu'elle fonctionne.
Merci d'avance pour votre aide.
A voir également:
- Excel: fonction "si" à plusieurs critère
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Si ou excel - Guide
- Déplacer colonne excel - Guide
- Excel trier par ordre croissant chiffre - Guide
14 réponses
Bonjour,
En fait tu veux la 1ère valeur > 0 :
=INDEX(A2:A12;EQUIV(VRAI;(A2:A12>0);0))
formule matricielle à valider par shift+ctrl+entrée avec le curseur dans la zone d'édition de la formule.
eric
En fait tu veux la 1ère valeur > 0 :
=INDEX(A2:A12;EQUIV(VRAI;(A2:A12>0);0))
formule matricielle à valider par shift+ctrl+entrée avec le curseur dans la zone d'édition de la formule.
eric
Re,
Un peu plus compliqué, il faut que l'espacement entre les colonnes qui t'interessent soit constant.
Ici: 3,
et la 1ère colonne est A (sinon jouer sur le -1)
=INDEX(A2:J2;EQUIV(VRAI;((MOD(COLONNE(A2:J2)-1);3)=0)*(A2:J2)>0);0))
Toujours en matriciel...
eric
Un peu plus compliqué, il faut que l'espacement entre les colonnes qui t'interessent soit constant.
Ici: 3,
et la 1ère colonne est A (sinon jouer sur le -1)
=INDEX(A2:J2;EQUIV(VRAI;((MOD(COLONNE(A2:J2)-1);3)=0)*(A2:J2)>0);0))
Toujours en matriciel...
eric
Reslt éric!
J'ai essayé ta dernière formule, mais elle ne fonctionne qu'en partie. voila la formule que j'ai écrite: INDEX(A2:J2;EQUIV(VRAI;(MOD(COLONNE(A2:J2);2)=0)*(A2:J2)>0;0))
La formule fonctionne seulement pour les cellules D et J. Lorsque j'insère un nombre >0 dans les cellules A et G, rien ne s'affiche.
Est-ce que c'est parce que j'ai pas mis le -1? J'ai pas vraiment compris dans quel cas et comment on joue avec le -1.
Merci d'avance!
J'ai essayé ta dernière formule, mais elle ne fonctionne qu'en partie. voila la formule que j'ai écrite: INDEX(A2:J2;EQUIV(VRAI;(MOD(COLONNE(A2:J2);2)=0)*(A2:J2)>0;0))
La formule fonctionne seulement pour les cellules D et J. Lorsque j'insère un nombre >0 dans les cellules A et G, rien ne s'affiche.
Est-ce que c'est parce que j'ai pas mis le -1? J'ai pas vraiment compris dans quel cas et comment on joue avec le -1.
Merci d'avance!
Bonjour urcata.
"dans la formule que je souhaite construire, il y a beaucoup plus de conditions". Il ne faut pas utiliser SI, mais structurer ton tableau différemment, en particulier en utilisant (ou en insérant) la colonne B pour faire tes tests sur les valeurs de la colonne A.
Mais sans avoir ton fichier sous les yeux, difficile de t'aider plus concrètement.
Envoie-le à l'aide de https://www.cjoint.com/ ou de http://<cijoint.fr/
"dans la formule que je souhaite construire, il y a beaucoup plus de conditions". Il ne faut pas utiliser SI, mais structurer ton tableau différemment, en particulier en utilisant (ou en insérant) la colonne B pour faire tes tests sur les valeurs de la colonne A.
Mais sans avoir ton fichier sous les yeux, difficile de t'aider plus concrètement.
Envoie-le à l'aide de https://www.cjoint.com/ ou de http://<cijoint.fr/
Bonjour Raymond
L’outil Excel doit calculer les distances de plusieurs collaborateurs par mode de transports. Le calcul doit être plus juste possible. Les calculs sont faits sur la base de 211 jours ouvrables dans l’année, soit 42,2 semaines l’année en considérant une semaine de 5 jours de travail.
A partir des informations sur les modes de transports des collaborateurs, j’ai relevé 3 cas possible :
1. un collaborateur utilise un seul mode de transport tous les jours de la semaine. Ex : la voiture tous les jours, ou le bus tous les jours.
2. un collaborateur utilise plus d’un mode de transport par jour. Ex : le métro et le bus tous les jours ou encore le métro, le bus et le tram tous jours.
3. un collaborateur utilise des modes de transports différents dans la semaine. Ex : 3 jours par semaine en voiture, et les 2 autres jours en bus.
Mon problème se trouve au niveau du calcule de la DPJ (Distance parcourue par jour) totale.
Mon outil calcul les DPJ des 2 premiers cas, sans problèmes. Mais, je cherche à intégrer le 3ème cas dans la formule.
J'èspère que j'ai réussi à joindre le fichier, sinon n'hésite pas à me relancer.
Merci d’avance pour ton aide.
L’outil Excel doit calculer les distances de plusieurs collaborateurs par mode de transports. Le calcul doit être plus juste possible. Les calculs sont faits sur la base de 211 jours ouvrables dans l’année, soit 42,2 semaines l’année en considérant une semaine de 5 jours de travail.
A partir des informations sur les modes de transports des collaborateurs, j’ai relevé 3 cas possible :
1. un collaborateur utilise un seul mode de transport tous les jours de la semaine. Ex : la voiture tous les jours, ou le bus tous les jours.
2. un collaborateur utilise plus d’un mode de transport par jour. Ex : le métro et le bus tous les jours ou encore le métro, le bus et le tram tous jours.
3. un collaborateur utilise des modes de transports différents dans la semaine. Ex : 3 jours par semaine en voiture, et les 2 autres jours en bus.
Mon problème se trouve au niveau du calcule de la DPJ (Distance parcourue par jour) totale.
Mon outil calcul les DPJ des 2 premiers cas, sans problèmes. Mais, je cherche à intégrer le 3ème cas dans la formule.
J'èspère que j'ai réussi à joindre le fichier, sinon n'hésite pas à me relancer.
Merci d’avance pour ton aide.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour urcata, bonjour raymond,
Je viens de retester ma formule du post 3.
Elle ramène bien la 1ère valeur >0 : urcata.xls
eric
edit: et si tu déposes un fichier sur cijoint.fr il faut coller ici le lien fourni...
Je viens de retester ma formule du post 3.
Elle ramène bien la 1ère valeur >0 : urcata.xls
eric
edit: et si tu déposes un fichier sur cijoint.fr il faut coller ici le lien fourni...
d'accord éric, je réessaye la formule. peut-être que j'ai foiré à un niveau. mais j'ai toujours pas compris ce que tu voulais dire par : "et la 1ère colonne est A (sinon jouer sur le -1").
Est-ce que ça veut dire que le "-1" est utilisé dans la formule si la première colone est différente de A?
Merci d'avance!
Est-ce que ça veut dire que le "-1" est utilisé dans la formule si la première colone est différente de A?
Merci d'avance!
re,
Comme je regarde le modulo 3 (qui va de 0 à 2) du n° de la colonne et que les colonnes démarrent à 1 il faut faire -1 pour les démarrer à 0.
Telle que la formule ramène 0 pour les colonnes A,D,G,.... et c'est celles-ci qui nous interessent d'où le =0
Maintenant si c'est les colonnes B,E,H qui t'interessent tu fais
soit: COLONNE(A2:J2)-2...=0
soit: COLONNE(A2:J2)-1...=1
ce qui est équivalent.
Si tu n'arrives pas à adapter à ta feuille il faut déposer un exemple sur cijoint.fr et coller ici le lien fourni.
eric
Comme je regarde le modulo 3 (qui va de 0 à 2) du n° de la colonne et que les colonnes démarrent à 1 il faut faire -1 pour les démarrer à 0.
Telle que la formule ramène 0 pour les colonnes A,D,G,.... et c'est celles-ci qui nous interessent d'où le =0
Maintenant si c'est les colonnes B,E,H qui t'interessent tu fais
soit: COLONNE(A2:J2)-2...=0
soit: COLONNE(A2:J2)-1...=1
ce qui est équivalent.
Si tu n'arrives pas à adapter à ta feuille il faut déposer un exemple sur cijoint.fr et coller ici le lien fourni.
eric
slt une fois de plus éric! je n'arive pas à appliquer la formule.
voila le lien de mon fichier: https://www.cjoint.com/?jsmpRqCd82
je vais reprendre les explications que j'ai donné à raymond ce matin pour une meilleure compréhension.
L’outil Excel doit calculer les distances de plusieurs collaborateurs par mode de transports. Le calcul doit être plus juste possible. Les calculs sont faits sur la base de 211 jours ouvrables dans l’année, soit 42,2 semaines l’année en considérant une semaine de 5 jours de travail.
A partir des informations sur les modes de transports des collaborateurs, j’ai relevé 3 cas possible :
1. un collaborateur utilise un seul mode de transport tous les jours de la semaine. Ex : la voiture tous les jours, ou le bus tous les jours.
2. un collaborateur utilise plus d’un mode de transport par jour. Ex : le métro et le bus tous les jours ou encore le métro, le bus et le tram tous jours.
3. un collaborateur utilise des modes de transports différents dans la semaine. Ex : 3 jours par semaine en voiture, et les 2 autres jours en bus.
Mon problème se trouve au niveau du calcule de la DPJ (Distance parcourue par jour) totale.
Mon outil calcul les DPJ des 2 premiers cas, sans problèmes. Mais, je cherche à intégrer le 3ème cas dans la formule.
Merci d’avance pour ton aide.
voila le lien de mon fichier: https://www.cjoint.com/?jsmpRqCd82
je vais reprendre les explications que j'ai donné à raymond ce matin pour une meilleure compréhension.
L’outil Excel doit calculer les distances de plusieurs collaborateurs par mode de transports. Le calcul doit être plus juste possible. Les calculs sont faits sur la base de 211 jours ouvrables dans l’année, soit 42,2 semaines l’année en considérant une semaine de 5 jours de travail.
A partir des informations sur les modes de transports des collaborateurs, j’ai relevé 3 cas possible :
1. un collaborateur utilise un seul mode de transport tous les jours de la semaine. Ex : la voiture tous les jours, ou le bus tous les jours.
2. un collaborateur utilise plus d’un mode de transport par jour. Ex : le métro et le bus tous les jours ou encore le métro, le bus et le tram tous jours.
3. un collaborateur utilise des modes de transports différents dans la semaine. Ex : 3 jours par semaine en voiture, et les 2 autres jours en bus.
Mon problème se trouve au niveau du calcule de la DPJ (Distance parcourue par jour) totale.
Mon outil calcul les DPJ des 2 premiers cas, sans problèmes. Mais, je cherche à intégrer le 3ème cas dans la formule.
Merci d’avance pour ton aide.
Au début tu voulais la 1ère valeur>0, à te lire on croit deviner que c'est plus la somme (d'1 cellule sur 3)que tu as besoin...
Et si tu disais clairement avec un exemple concret ce que tu veux ?
eric
Et si tu disais clairement avec un exemple concret ce que tu veux ?
eric
Au niveau des distances totales parcourues par collaborateur, je cherche une formule pour calculer la distance totale journalière (colonne AF) parcourue par chaque collaborateur en tenant compte des tous les modes de transports.
1)J’arrive à écrire la une formule si le collaborateur utilise le ou les même(s) mode de transports tous les jours de la semaine.
2)Mais, s’il utilise des transports différents d’un jour à l’autre, ça pose problème. Exemple : si un collaborateur fait 4km tous les jours, et que 3 fois par semaine il utilise sa voiture, et les 2 autres jours, il utilise le bus. La distance totale journalière n’est pas 8, mais 4. et c’est ça que je n’arrive pas formuler.
j'ai écrit la formule suivante:
si(ou(C22=5;E22=5;I22=5;L22=5;O22=5;R22=5;U22=5;X22=5;AA22=5;AD22=5);SOMME(B22;E22;H22;K22;N22;Q22;T22;W22;Z22;AC22);X)
la partie en grand répond à (1). je cherche à la compléter pour répondre à (2) c'est pour cela que j'ai mis X à la fin de la formule.
j'èspère que j'ai été plus claire cette fois-ci.
1)J’arrive à écrire la une formule si le collaborateur utilise le ou les même(s) mode de transports tous les jours de la semaine.
2)Mais, s’il utilise des transports différents d’un jour à l’autre, ça pose problème. Exemple : si un collaborateur fait 4km tous les jours, et que 3 fois par semaine il utilise sa voiture, et les 2 autres jours, il utilise le bus. La distance totale journalière n’est pas 8, mais 4. et c’est ça que je n’arrive pas formuler.
j'ai écrit la formule suivante:
si(ou(C22=5;E22=5;I22=5;L22=5;O22=5;R22=5;U22=5;X22=5;AA22=5;AD22=5);SOMME(B22;E22;H22;K22;N22;Q22;T22;W22;Z22;AC22);X)
la partie en grand répond à (1). je cherche à la compléter pour répondre à (2) c'est pour cela que j'ai mis X à la fin de la formule.
j'èspère que j'ai été plus claire cette fois-ci.
j'èspère que j'ai été plus claire cette fois-ci.
non
ou du moins ça manque de précision encore...
Que représente FH ??? Est-ce le nombre de fois que ce transport est utilisé ?
Si oui faut-il faire une moyenne pondérée par FH ou par le nombre de transports utilisés ?
Ex:
4km en voiture 3 fois et 5km en train 2 fois.
Faut-il (4+5)/2 ou (4*3+5*2)/5 ????
Si c'est le 2ème cas ça pourrait être :
=SOMME(B22*C22;E22*F22;H22*I22;K22*L22)/SOMME(C22;F22;I22;L22)
Fait seulement sur 4 modes de transports (à compléter), et si j'ai tout compris ça te calcule tes cas 1 et 2.
eric
non
ou du moins ça manque de précision encore...
Que représente FH ??? Est-ce le nombre de fois que ce transport est utilisé ?
Si oui faut-il faire une moyenne pondérée par FH ou par le nombre de transports utilisés ?
Ex:
4km en voiture 3 fois et 5km en train 2 fois.
Faut-il (4+5)/2 ou (4*3+5*2)/5 ????
Si c'est le 2ème cas ça pourrait être :
=SOMME(B22*C22;E22*F22;H22*I22;K22*L22)/SOMME(C22;F22;I22;L22)
Fait seulement sur 4 modes de transports (à compléter), et si j'ai tout compris ça te calcule tes cas 1 et 2.
eric
FH représente le nombre de jours pendant lesquels on utilise un mode de transport dans la semaine.
1 semaine correspond à 5 jours
1 an = 211 jours = 42,2 semaines de 5 jours.
Les colonnes AF et AG calculent les distances totales parcourues par jour.
DPJ = distance totale parcourue par jour
DA=distance annuelle parcourue
La formule que je souhaite écrire doit calculer la DPJ, donc la colonne (AF), pour les différents collaborateurs.
Sauf que je n’arrive pas trouver une formule qui prend en compte tous les scénarios possibles, que j’ai cités dans le post précédent.
Pour reprendre ton ex : 4km en voiture 3 fois et 5km en train 2 fois.
1) Distance totale par jour : DPJ (colonneAF)=4km parce que chaque jour, il parcoure 4 Km.
Si j’ai 4km en voiture et 5 km en train tous les jours de la semaine (5 jours), DPJ (colonne AF)= 4+5=9 km par jour. (C’est intégrer une formule dans la colonne AF qui prend en compte les 2 cas que je n’arrive pas à construire).
2) DA : distance anuelle (je n’ai pas de difficultés à ce niveau)
4km en voiture 3 fois => DAvoiture(colonne D)=4*3*42,2(nombre de semaine dans l’année)
5km en train 2 fois => DAtrain(colonne G)=5*2*42,2
Distances totales annuelles : DA (colonne AG)= DAvoiture + DAtrain
En espérant avoir été plus claire, bon w.e et merci encore !
1 semaine correspond à 5 jours
1 an = 211 jours = 42,2 semaines de 5 jours.
Les colonnes AF et AG calculent les distances totales parcourues par jour.
DPJ = distance totale parcourue par jour
DA=distance annuelle parcourue
La formule que je souhaite écrire doit calculer la DPJ, donc la colonne (AF), pour les différents collaborateurs.
Sauf que je n’arrive pas trouver une formule qui prend en compte tous les scénarios possibles, que j’ai cités dans le post précédent.
Pour reprendre ton ex : 4km en voiture 3 fois et 5km en train 2 fois.
1) Distance totale par jour : DPJ (colonneAF)=4km parce que chaque jour, il parcoure 4 Km.
Si j’ai 4km en voiture et 5 km en train tous les jours de la semaine (5 jours), DPJ (colonne AF)= 4+5=9 km par jour. (C’est intégrer une formule dans la colonne AF qui prend en compte les 2 cas que je n’arrive pas à construire).
2) DA : distance anuelle (je n’ai pas de difficultés à ce niveau)
4km en voiture 3 fois => DAvoiture(colonne D)=4*3*42,2(nombre de semaine dans l’année)
5km en train 2 fois => DAtrain(colonne G)=5*2*42,2
Distances totales annuelles : DA (colonne AG)= DAvoiture + DAtrain
En espérant avoir été plus claire, bon w.e et merci encore !
Essaie ça :
SI(A2>0;A2;SI(A3>0;A3;SI(A4>0;A4;SI(A5>0;A5;SI(A6>0;A6;SI(A7>0;A7;SI(A8>0;A8;A12)))))))&SI(A9>0;A9;SI(A10>0;A10;SI(A11>0;A11;A12)))
J'ai mis en gras ce que j'ai modifié. Cela biensur, a aussi modifié les parenthèses.
Je sais que ton message date mais peut etre que cela peut t'apporter une réponse. & permet de rajouter une deuxième fonction SI() qui sera la suite de ce qu'il y a avant.
SI(A2>0;A2;SI(A3>0;A3;SI(A4>0;A4;SI(A5>0;A5;SI(A6>0;A6;SI(A7>0;A7;SI(A8>0;A8;A12)))))))&SI(A9>0;A9;SI(A10>0;A10;SI(A11>0;A11;A12)))
J'ai mis en gras ce que j'ai modifié. Cela biensur, a aussi modifié les parenthèses.
Je sais que ton message date mais peut etre que cela peut t'apporter une réponse. & permet de rajouter une deuxième fonction SI() qui sera la suite de ce qu'il y a avant.
Dans le cas, où les cellules supérieures à 0 ne se suivent pas, comment utiliser la fonction index?
Par exemple: SI(A2>0;A2;SI(D2>0;D2;SI(G2>0;G2;J2))). dans la formule que je souhaite construire, il y a beaucoup plus de conditions.
Merci encore, merci d'avance pour la suite.