Fonction à plusieurs "SI" et "ET"

Fermé
petitju Messages postés 6 Date d'inscription mardi 2 septembre 2014 Statut Membre Dernière intervention 17 septembre 2014 - 2 sept. 2014 à 07:31
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 2 sept. 2014 à 10:30
Bonjour,

Voici mon problème :

Voici les données :

type S => De + 2*0,3 (mini 0.9)

type C => De + 2*0,55 (mini 1.4)

type CR => De + 2*0,55 (mini 1.7)

type CDG => De + 2*0,65 (mini 2)

Je dois créer une fonction qui me permette de déduire une largeur qui est le résultat de la colonne 'De + ...'
Pour cela, je connais le 'type' et 'De'. La formule doit permettre de calculer en fonction du 'type', la largeur en prenant en compte la colonne 'mini'.
Exemple: J'ai De=0,1 et type "S", alors la largeur = 0.9 (le mini) et non 0.7 (0.1 + 0.6).
Si j'avais eu De=0.4 et type "S", alors la largeur aurait été 1.
La formule est la suivante : =SI(ET(type="S";De+0,6>0,9);De+0,6;0,9)
Ce que je voudrais, c'est faire une formule globale. C'est à dire, si c'est de type "S", alors .. si c'est de type "C", alors ... si ... jusqu'a si type "CDG", alors ...
Le tout sur une seule case et non plusieurs.
Est ce qu'il y a une formule à utiliser avec ET, OU, ... ?

Merci

Julien
A voir également:

3 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 398
Modifié par Vaucluse le 2/09/2014 à 07:47
Bonjour
essayez peut être ceci:
avec le code en A et la valeur à sommer en B

=SI(A1="S";MAX(B1+0,6;0,9);SI(A1="C";MAX(B1+1,1;1,4);SI(A1="CR";MAX(B1+1,1;1,7);SI(A1="CDG";MAX(B1+1,3;2);""))))

crdlmnt

Errare humanum est, perseverare diabolicum
0
petitju Messages postés 6 Date d'inscription mardi 2 septembre 2014 Statut Membre Dernière intervention 17 septembre 2014
2 sept. 2014 à 08:19
Ok merci beaucoup, cela marche !

Je voudrais y apporter une modif si possible suivant la prodonfeur

profondeur = 0-1.3 m : type S => De + 2*0,3 (mini 0.9)

profondeur = 1.3-2.5 m :type C => De + 2*0,55 (mini 1.4)

profondeur = 2.5-3.5 m :type CR => De + 2*0,55 (mini 1.7)

profondeur = 3.5-5.5 m :type CDG => De + 2*0,65 (mini 2)

profondeur > 5.5 m :type CDG => De + 2*0,7 (mini 2.1)

Est ce que cela est possible ? Le souci est que le type est identique pour 3.5-5.5 et >5.5 m, la largeur change et le mini aussi.

Merci
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 398
2 sept. 2014 à 10:30
RE

à y regarder de plus près vos conditions demandent des précisions et il semble qu'on puisse alléger la formule

ou alors je ne comprend pas:


prenons à partir du cas CR jusqu'à la fin

en aucun cas, si "De" se situe entre 2,5 et 3,5 , le minimum ne peut pas se retrouver au dessous de 1,7 puisqu'il est déjà à 2,5+1,1 et ainsi de suite jusqu'aux deux CDG?

Par contre pour éviter les erreurs, on pourrait associer directement l'épaisseur à la valeur sans passer par la lettre selon votre dernier tableau.

=SI(B1<=1,3;MAX(B1+0,6;0,9);SI(B1<=2,5;MAX(B1+1,1;SI(B1<=3,5;B1+&,1;SI(B1<=5,5;B1+1,3;SI(B1>5,5;B1+1,4)))


et si vous voulez coder automatiquement les lettres en à partir de la valeur B

en A1=

=SI(B1<=1,3;"S";SI;B1<=2,5;"C";SI(B1<=3,5;"CR";SI(B1>3,5;"CDG";""))))

revenez si ça ne convient pas

Crdlmnt
0