Cherche formule

Bonjour à tous,

J'ai un nouveau casse-tête. Je cherche à rédiger une formule Excel qui citerait une cellule de référence (exemple A1) et qui renverrait :
- la valeur de cette cellule de référence si celle-ci ne dépasse pas 30 ;
- OU 30 si la valeur de la cellule de référence dépasse 30 mais ne dépasse pas 60 ;
- OU la valeur de la cellule de référence moins 30 si celle-ci dépasse 60 ?

Cela vous paraît peut-être simple. Mais pas à moi.

Merci déjà pour l'aide.

Bonjour,

Plusieurs moyens de procéder... Une solution avec MIN et MAX :

=MIN(A1; 30) + MAX(0; A1-60)

MIN(A1, 30) :
Si A1 ≤ 30 → renvoie A1
Si A1 > 30 → renvoie 30
MAX(0, A1 - 60) :

Si A1 ≤ 60 → renvoie 0
Si A1 > 60 → renvoie A1 - 60

Vous êtes sur Excel 2010 ? Sur 2019 on a SI.CONDITIONS qui est pas mal aussi.

Bonjour,

=si(A1<=30;A1;si(A1>=60;A1-30;30))

Je vérifie si A1 est inférieur à 30 si c'est faux, je vérifie si la valeur est supérieur à 60 et si c'est faux alors 30.
J'ai supposé que si la valeur était égal à 30 ou à 60 on devait les mettre dans les tranches inférieur et supérieur respective.

Bonjour Themmanuel,

J'ai suivi ton conseil et cela marche parfaitement. Poussant les choses plus loin, j'ai inclus une première condition globale. Dans les enregistrements où cette condition est remplie, la formule continue de fonctionner. Mais quand elle ne l'est pas, elle renvoie la réponse FAUX. Comment faire pour que, dans ce cas, elle laisse la cellule vide ou qu'elle renvoie un espace ? C'est juste visuel, pour la clarté du tableau.

Merci.

Bonjour

Logiquement cette formule devrait faire le job

=SIERREUR(SI(A1<=30;A1;SI(A1>=60;A1-30;30));"")

Crdlt

Bonjour Joco,

Merci pour ta réponse mais elle ne tient pas compte de la condition générale (que je n'ai pas énoncée).

Voici, en fait l'état actuel de ma formule :

=SI($C2966="Prescrite";(SI($F2966<=30;$F2966; SI($F2966<=60;30; $F2966-30))))

Donc, au départ, la cellule $C2966 doit contenir le mot "Prescrite". Si cette première condition est remplie, la formule examine le contenu de la cellule $F2966 et elle renvoie la somme calculée en fonction de sa valeur. Mais si cette première condition n'est pas remplie, elle renvoie le message FAUX. C'est cela que j'aimerais éviter.

Je comprends que je dois ajouter la fonction SIERREUR, mais je ne comprends pas bien la syntaxe.

Encore merci.

Bonsoir à tous !

Voici, en fait l'état actuel de ma formule :

=SI($C2966="Prescrite";(SI($F2966<=30;$F2966; SI($F2966<=60;30; $F2966-30))))

Donc, au départ, la cellule $C2966 doit contenir le mot "Prescrite". Si cette première condition est remplie, la formule examine le contenu de la cellule $F2966 et elle renvoie la somme calculée en fonction de sa valeur. Mais si cette première condition n'est pas remplie, elle renvoie le message FAUX. C'est cela que j'aimerais éviter.

Compte tenu de votre formulation, le retour FAUX résulte de l'absence de l'argument "faux" du premier SI.

Pour éviter cela, il est nécessaire de préciser ce que l'on désire obtenir pour cette possibilité.

Exemple :
=SI(C2966="Prescrite";SI(F2966<=30;F2966;SI(F2966<=60;30;F2966-30));"")

Ici, si la cellule C2966 contient une autre valeur que "Prescrite", la formule retournera une valeur vide.

Re,

Pour info pour ne pas s'emmêler dans les imbrications de SI et se retrouver justement avec des FAUX pour les cas auxquels on n'a pas pensé, il est souvent bon de limiter l'imbrication des SI et de les garder pour les points cruciaux.

A vous de voir, 3 SI c'est gérable, 5 c'est déjà une autre affaire...


Juste pour répondre à la question en restant sur ma ligne "parallèle", une autre approche (qui renvoie 0 si C2966 <> Prescrite) :

=($C2966="Prescrite") * (MIN($F2966; 30) + MAX(0; $F2966-60))

Bonjour à tous !

Un retour serait opportun .......

Bonjour à tous,

Me revoici. J'ai appliqué les instructions et suivi les conseils. J'ai adapté les formules dans d'autres contextes et tout fonctionne à merveille. J'ai aussi eu recours à la fameuse "intelligence" artificielle pour certains détails. Mon projet est donc abouti. Il me reste à régler quelques détails mineurs et à procéder à l'un ou l'autres agencements"cosmétiques".

Merci donc à tous pour votre aide précieuse.

Post scriptum - Comme j'ai très peu d'expérience dans l'usage d'Excel, j'ai passé pas mal d'heures à arriver au résultat final. C'est pourquoi j'ai mis parfois du temps à réagir.

Bonjour à tous !

Bien....

Je vous remercie de ce retour.

Bien, merci pour votre retour. J'espère qu'avec l'aide de l'IA vous avez pu décortiquer les formules proposées et affiner vos compétences Excel. Bonne journée.

Rechercher des sujets similaires à "cherche formule"