OVH Cloud OVH Cloud

Comment ajouter plusieurs fonctions "SI" dans une même cellule ?

9 réponses
Avatar
Audrey
Je souhaite ajouter dans une même cellule les renseignements suivants:
Si B1<=100 alors B1=150
Si B1>=500 alors B1=300
Si B1 est compris entre 100 et 500 alors B1=B2*0.5%

Merci par avance pour votre aide.

9 réponses

Avatar
Bernard Cordier
Audrey wrote:
Je souhaite ajouter dans une même cellule les renseignements suivants:
Si B1<0 alors B10
Si B1>P0 alors B100
Si B1 est compris entre 100 et 500 alors B1²*0.5%


Quelque chose ne va pas. B1 ne peut pas à la fois être <0 et égal à 150,
etc.
Je suppose qu'il s'agit, par exemple, de A1. Ce qui donne :
B1=SI(A1<0;150;SI(A1>P0;300;B2*0,005))

--
Bernard Cordier
Ressources STG
http://www.cordier-bernard.fr

Avatar
Jacky
Bonjour,

Si cette demande (pour le moins Bizarre) est correcte
AMA
Sans VBA point de solution

Salutations
JJ

"Audrey" a écrit dans le message de
news:
Je souhaite ajouter dans une même cellule les renseignements suivants:
Si B1<0 alors B10
Si B1>P0 alors B100
Si B1 est compris entre 100 et 500 alors B1²*0.5%

Merci par avance pour votre aide.


Avatar
Audrey
En fait il s'agit d'un calcul de garantie immobilière suivant le montant du
financement. Donc si le Montant est inférieur à 100 le prix sera de 150. Si
le montant est supérieur à 500 le prix sera de 300. Et si le montant est
compris entre 100 et 500 alors le prix sera de (Montant de financement fois
0.5%)

J'espère que j'arrive à me faire comprendre

Merci


Audrey wrote:
Je souhaite ajouter dans une même cellule les renseignements suivants:
Si B1<0 alors B10
Si B1>P0 alors B100
Si B1 est compris entre 100 et 500 alors B1²*0.5%


Quelque chose ne va pas. B1 ne peut pas à la fois être <0 et égal à 150,
etc.
Je suppose qu'il s'agit, par exemple, de A1. Ce qui donne :
B1=SI(A1<0;150;SI(A1>P0;300;B2*0,005))

--
Bernard Cordier
Ressources STG
http://www.cordier-bernard.fr






Avatar
XLnoob
Salut Audrey,

On peut imbriquer jusqu'à 7 fonctions :

Mais il me semble que la facon dont tu poses la problème va engendrer une
référence circulaire (cellule faisant appel à elle-même).

Donc, par exemple, dans la colonne a coté de B1 (en "C1") :
=SI(B1<0;150;SI(B1>P0;300;B2*0,5%))

En espérant que ca corresponde à ton problème,
a+

"Audrey" wrote:

Je souhaite ajouter dans une même cellule les renseignements suivants:
Si B1<0 alors B10
Si B1>P0 alors B100
Si B1 est compris entre 100 et 500 alors B1²*0.5%

Merci par avance pour votre aide.


Avatar
lSteph
Bien le bonjour,
Ce que l'on comprend en premier de ce que tu demandes n'est pas possible
ainsi:
Une formule ne peut pas faire référence à son propre résultat.

En revanche s'il s'agissait de contrôler ainsi cette valeur lors de sa
saisie , c'est faisable par macro,
Clic droit onglet de feuille visualiser code, coller ceci dans le module et
fermer VBE:

'''''''''''''
Private Sub Worksheet_Change(ByVal Target As Range)
Dim isect As Range
Set isect = Intersect(Target, [b1])
If Not isect Is Nothing Then
Application.EnableEvents = False
Select Case isect
Case Is <= 100
[b1] = 150
Case Is >= 500
[b1] = 300
Case Else
[b1] = [b2] * 0.05
End Select
Application.EnableEvents = True
End If
End Sub
''''''''''''


'lSteph

'(Si ton but est seulement d'écrire ce texte (bizarre) dans une même
cellule mais sur trois lignes alors:
'Format Renvoi à la ligne automatique,
'puis tu entre ton texte en appuyant sur alt+entrée quand tu veux aller à la
ligne.
"Audrey" a écrit dans le message de news:

Je souhaite ajouter dans une même cellule les renseignements suivants:
Si B1<0 alors B10
Si B1>P0 alors B100
Si B1 est compris entre 100 et 500 alors B1²*0.5%

Merci par avance pour votre aide.


Avatar
Bernard Cordier
Audrey wrote:
En fait il s'agit d'un calcul de garantie immobilière suivant le
montant du financement. Donc si le Montant est inférieur à 100 le
prix sera de 150. Si le montant est supérieur à 500 le prix sera de
300. Et si le montant est compris entre 100 et 500 alors le prix sera
de (Montant de financement fois
0.5%)


Donc le montant et le prix sont deux valeurs différentes, qui doivent donc
figurer dans deux cellules différentes. Autrement tu as une référence
circulaire comme te 'lont indiqué d'autres participants.
Si le montant et le prix sont dans deux cellules différentes, tu peux
adopter ma formule, en l'adaptant bien sûr.

Bernard

Avatar
Audrey
Argh.. effectivement j'me suis mal exprimée.Y'a bien 2 cellules !!

En fait c'est si B1<0 alors E5 0 (oui je sais c'est plus clair d'un
coup)
mais aussi si B1>P0 alors E500
mais si B1 et compris entre 100 et 500 alors E5·*0.5%

C'est plus logique non ?!? Par contre j'arrive pas à valider plusieurs
fonctions SI et surtout celle ou B7 doit être compris entre 100 et 500

Merci par avance
Avatar
lSteph
Bonjour Audrey,

en E5 donc:

=si(B1<0;150 ;si(B1>P0;300;b7*0,005))

Cordialement.

lSteph
"Audrey" a écrit dans le message de news:

Argh.. effectivement j'me suis mal exprimée.Y'a bien 2 cellules !!

En fait c'est si B1<0 alors E5 0 (oui je sais c'est plus clair d'un
coup)
mais aussi si B1>P0 alors E500
mais si B1 et compris entre 100 et 500 alors E5·*0.5%

C'est plus logique non ?!? Par contre j'arrive pas à valider plusieurs
fonctions SI et surtout celle ou B7 doit être compris entre 100 et 500

Merci par avance


Avatar
Audrey
PARFAIT !!!

Merci beaucoup !


Bonjour Audrey,

en E5 donc:

=si(B1<0;150 ;si(B1>P0;300;b7*0,005))

Cordialement.

lSteph
"Audrey" a écrit dans le message de news:

Argh.. effectivement j'me suis mal exprimée.Y'a bien 2 cellules !!

En fait c'est si B1<0 alors E5 0 (oui je sais c'est plus clair d'un
coup)
mais aussi si B1>P0 alors E500
mais si B1 et compris entre 100 et 500 alors E5·*0.5%

C'est plus logique non ?!? Par contre j'arrive pas à valider plusieurs
fonctions SI et surtout celle ou B7 doit être compris entre 100 et 500

Merci par avance