Conditions SI imbriquées
Résolu
Alex
-
ccm81 Messages postés 11033 Statut Membre -
ccm81 Messages postés 11033 Statut Membre -
Bonjour tout le monde,
Je rencontre des difficultés avec les conditions "SI" imbriquées. J'ai réussi à faire une première partie, mais je bloque pour la suite.
J'utilise Excel 2010. Je tente en format xlsx.
Concrètement, j'ai crée un fichier pour faciliter le traitement de Notes de frais.
Dans la feuille, j'indique le nombre de nuit, le prix de chaque nuit. La feuille calcule dans une cellule le montant total des nuits (nbr de nuit * montant de la nuit) et calcule dans une autre cellule le "montant à rembourser".
==> Pour calculer le montant à rembourser, s'il est inférieur au plafond, on prend le montant. S'il est supérieur au plafond, on prend le plafond.
==> Selon que je sois à Paris, ou ailleurs, le plafond de remboursement de l'Hôtel n'est pas le même. J'ai stocké les plafonds dans une feuille différente de mon classeur (pour pouvoir les modifier facilement).
A ce stade, j'arrive à gérer le cas de Paris, mais je n'arrive pas à y associer le cas des "Autres" villes.
Voici ma formule actuelle :
=SI(ET(C11="Paris";'Note de frais'!O11>('Note de frais'!M11*Paramètres!G5));'Note de frais'!M11*Paramètres!$G5;O11)
Colonne C : Lieu de déplacement (= Liste déroulante avec "Paris" ou "Autre" mais on peut y saisir autre chose)
Colonne M : Nombre de nuits
Colonne N : Prix par nuit
Colonne O : Montant à prendre en compte (= M*N)
Comment faire pour que en complément de cette première condition, si C11 est différente de "Paris", alors le plafond à vérifier soit dans Paramètres!G6 ?
J'utilise mal les ET et le OU j'imagine mais à force d'essayer dans tous les sens je n'y arrive plus.
Votre aide serait plus (mais vraiment plusss) qu'appréciée.
N'hésitez pas à me faire préciser si je ne suis pas clair.
Bonne journée !
Je rencontre des difficultés avec les conditions "SI" imbriquées. J'ai réussi à faire une première partie, mais je bloque pour la suite.
J'utilise Excel 2010. Je tente en format xlsx.
Concrètement, j'ai crée un fichier pour faciliter le traitement de Notes de frais.
Dans la feuille, j'indique le nombre de nuit, le prix de chaque nuit. La feuille calcule dans une cellule le montant total des nuits (nbr de nuit * montant de la nuit) et calcule dans une autre cellule le "montant à rembourser".
==> Pour calculer le montant à rembourser, s'il est inférieur au plafond, on prend le montant. S'il est supérieur au plafond, on prend le plafond.
==> Selon que je sois à Paris, ou ailleurs, le plafond de remboursement de l'Hôtel n'est pas le même. J'ai stocké les plafonds dans une feuille différente de mon classeur (pour pouvoir les modifier facilement).
A ce stade, j'arrive à gérer le cas de Paris, mais je n'arrive pas à y associer le cas des "Autres" villes.
Voici ma formule actuelle :
=SI(ET(C11="Paris";'Note de frais'!O11>('Note de frais'!M11*Paramètres!G5));'Note de frais'!M11*Paramètres!$G5;O11)
Colonne C : Lieu de déplacement (= Liste déroulante avec "Paris" ou "Autre" mais on peut y saisir autre chose)
Colonne M : Nombre de nuits
Colonne N : Prix par nuit
Colonne O : Montant à prendre en compte (= M*N)
Comment faire pour que en complément de cette première condition, si C11 est différente de "Paris", alors le plafond à vérifier soit dans Paramètres!G6 ?
J'utilise mal les ET et le OU j'imagine mais à force d'essayer dans tous les sens je n'y arrive plus.
Votre aide serait plus (mais vraiment plusss) qu'appréciée.
N'hésitez pas à me faire préciser si je ne suis pas clair.
Bonne journée !
A voir également:
- Conditions SI imbriquées
- Excel cellule couleur si condition texte - Guide
- Je ne suis pas un robot confidentialité - conditions ✓ - Forum Mail
- Excel reporter des données sur une autre feuille avec conditions - Forum Excel
- Transposer des lignes sur une autre feuille sous condition ✓ - Forum Excel
- Comment débloquer "je ne suis pas un robot" ✓ - Forum Windows 8 / 8.1
4 réponses
Bonjour
Essaies avec la structure suivante
RQ. attention aux parenthèses
Cdlmnt
Essaies avec la structure suivante
=SI(C11="Paris" ;SI('Note de frais'!O11>'Note de frais'!M11*Paramètres!G5 ;'Note de frais'!M11*Paramètres!$G5 ;O11) ;la partie sinon de C11 = "Paris" )
RQ. attention aux parenthèses
Cdlmnt
ccm81
Messages postés
11033
Statut
Membre
2 433
ZZ. Message modifié à 15h53
Bonjour Alex
Ce n'est pas un SI qu'il faut mais un MIN associé à une RECHERCHEV dans le tableau des plafonds
exemple avec 2 possibilités de liste, à adapter : https://www.cjoint.com/c/JDiopvYVHQf
Cdlmnt
Via
Ce n'est pas un SI qu'il faut mais un MIN associé à une RECHERCHEV dans le tableau des plafonds
exemple avec 2 possibilités de liste, à adapter : https://www.cjoint.com/c/JDiopvYVHQf
Cdlmnt
Via
Bonjour à tous les deux,
Un grand merci !!
La solution de ccm81 fonctionne très bien pour moi avec seulement 1 lieu à tester et une solution unique si le test ne passe pas, ainsi une fois complet :
Je vais quand même implémenter la solution de via55 avec MIN et RechercheV, qui après test marche très bien aussi ! Et qui sera plus évolutive si ma politique de plafonds se précise avec des lieux en plus.
Elle ressemble à ceci (j'y ai rajouté une condition pour ne pas afficher si elle est vide ou = à 0) :
Un grand merci à tous les deux encore une fois. Réactifs, efficaces, et cela m'a permis de mieux comprendre pourquoi je bloquais.
Un grand merci !!
La solution de ccm81 fonctionne très bien pour moi avec seulement 1 lieu à tester et une solution unique si le test ne passe pas, ainsi une fois complet :
=SI(C11="Paris"; SI('Note de frais'!O11>'Note de frais'!M11*Paramètres!$G$5 ;'Note de frais'!M11*Paramètres!$G$5 ;O11) ;SI('Note de frais'!O11>'Note de frais'!M11*Paramètres!$G$6 ;'Note de frais'!M11*Paramètres!$G$6 ;O11) )
Je vais quand même implémenter la solution de via55 avec MIN et RechercheV, qui après test marche très bien aussi ! Et qui sera plus évolutive si ma politique de plafonds se précise avec des lieux en plus.
Elle ressemble à ceci (j'y ai rajouté une condition pour ne pas afficher si elle est vide ou = à 0) :
=SI(M11*N11=0 ;"" ;(MIN(O11 ;SIERREUR(RECHERCHEV(C11 ;Paramètres!$F$5:$G$6 ;2 ;0) ;Paramètres!$G$6)*M11) ) )
Un grand merci à tous les deux encore une fois. Réactifs, efficaces, et cela m'a permis de mieux comprendre pourquoi je bloquais.