OVH Cloud OVH Cloud

Une Valeur suivant un montant !

12 réponses
Avatar
phil.aline.naudin
Bonsoir,

J'ai tenté par l'utilisation d'une fonction "SI" d'afficher une valeur
suivant un montant.
Exemple :
Montant
<500 Valeur
0,5
>500<1000 1
>1000<2000 2
>2000<3000 3
>3000 4


J'ai comme formule :

SI(H6>3000;"4";SI(H6>=2000;3;SI(H6>=1000;2;SI(H6>=500;1;SI(H6<=500;0,5)))))

Le problème vient du fait que je voudrais remonter une valeur "0" pour le
Montant = à "0"

Avant tout existe t il une autre formule plus simple ?

Merci pour vos réponses

10 réponses

1 2
Avatar
ChrisV
Bonjour phil.aline.naudin,

=(H6>0)*SI(H6<500;0,5;MIN(4;FRANC(0,5+H6/1000;0)))


ChrisV


"phil.aline.naudin" a écrit dans le message
de news: 42a8c0b3$0$1240$
Bonsoir,

J'ai tenté par l'utilisation d'une fonction "SI" d'afficher une valeur
suivant un montant.
Exemple :
Montant
<500 Valeur
0,5
500<1000 1
1000<2000 2
2000<3000 3
3000 4



J'ai comme formule :

SI(H6>3000;"4";SI(H6> 00;3;SI(H6>00;2;SI(H6>P0;1;SI(H6<P0;0,5)))))

Le problème vient du fait que je voudrais remonter une valeur "0" pour le
Montant = à "0"

Avant tout existe t il une autre formule plus simple ?

Merci pour vos réponses




Avatar
AV
Tu y es presque : Il suffit que tu modifies le dernier SI :

=SI(H6>3000;4;SI(H6> 00;3;SI(H6>00;2;SI(H6>P0;1;SI(H6>0;0.5;0)))))

Avant tout existe t il une autre formule plus simple ?
Je ne crois pas....


AV

Avatar
AV
Bel effort !
(Un doute sur l'inclusion ou non de la borne 3000)

AV
Avatar
ChrisV
Salut Alain,

Au regard aux autres bornes, ça me paraissait logique...
Nous verrons ce qu'en dit le demandeur... s'il revient !


ChrisV

nb: tu es à Paris le 27 ?


"AV" a écrit dans le message de news:
%
Bel effort !
(Un doute sur l'inclusion ou non de la borne 3000)

AV




Avatar
phil.aline.naudin
Merci à Tous pour les réponses,
Ta formule fonctionne nettement mieux que la mienne.
ailleurs la mienne fonctionne mais je me demande comment !!!

Par contre tu pourrais m'expliquer ta formule car je sèche ...
merci et encore respect


"ChrisV" a écrit dans le message de news:

Salut Alain,

Au regard aux autres bornes, ça me paraissait logique...
Nous verrons ce qu'en dit le demandeur... s'il revient !


ChrisV

nb: tu es à Paris le 27 ?


"AV" a écrit dans le message de news:
%
Bel effort !
(Un doute sur l'inclusion ou non de la borne 3000)

AV








Avatar
ChrisV
Re,

Par contre tu pourrais m'expliquer ta formule car je sèche ...


Quelle partie exactement...?


ChrisV


"phil.aline.naudin" a écrit dans le message
de news: 42a9d888$0$1251$
Merci à Tous pour les réponses,
Ta formule fonctionne nettement mieux que la mienne.
ailleurs la mienne fonctionne mais je me demande comment !!!

Par contre tu pourrais m'expliquer ta formule car je sèche ...
merci et encore respect


"ChrisV" a écrit dans le message de news:

Salut Alain,

Au regard aux autres bornes, ça me paraissait logique...
Nous verrons ce qu'en dit le demandeur... s'il revient !


ChrisV

nb: tu es à Paris le 27 ?


"AV" a écrit dans le message de news:
%
Bel effort !
(Un doute sur l'inclusion ou non de la borne 3000)

AV












Avatar
phil.aline.naudin
Salut,
Pour ta formule :
=(H6>0)*SI(H6<500;0,5;MIN(4;FRANC(0,5+H6/1000;0)))
les parties qui me bloquent sont :
avant la condition Si tu donnes =(H6>0)* Que veut dire * ?
Dans la condition Si la zone après FRANC, je ne comprends pas ta division

et surtout tu arrives à un résultat mieux cadré que moi !

Merci


"ChrisV" a écrit dans le message de news:

Re,

Par contre tu pourrais m'expliquer ta formule car je sèche ...


Quelle partie exactement...?


ChrisV


"phil.aline.naudin" a écrit dans le message
de news: 42a9d888$0$1251$
Merci à Tous pour les réponses,
Ta formule fonctionne nettement mieux que la mienne.
ailleurs la mienne fonctionne mais je me demande comment !!!

Par contre tu pourrais m'expliquer ta formule car je sèche ...
merci et encore respect


"ChrisV" a écrit dans le message de news:

Salut Alain,

Au regard aux autres bornes, ça me paraissait logique...
Nous verrons ce qu'en dit le demandeur... s'il revient !


ChrisV

nb: tu es à Paris le 27 ?


"AV" a écrit dans le message de news:
%
Bel effort !
(Un doute sur l'inclusion ou non de la borne 3000)

AV
















Avatar
ChrisV
Re,

=(H6>0)*SI(H6<500;0,5;MIN(4;FRANC(0,5+H6/1000;0)))


avant la condition Si tu donnes =(H6>0)* Que veut dire * ?


1)
c'est tout simplement l'opérateur arithmétique "multiplier"
pour d'avantage de lisibilité, notons:
A=(H6>0) et
B=SI(H6<500;0,5;MIN(4;FRANC(0,5+H6/1000;0)))
on peut donc écrire la formule initiale ainsi =A*B
(H6>0) ne peut renvoyer que deux valeurs possibles... vrai ou faux
VRAI étant interprété comme égal à 1, et
FAUX comme égal à 0
quelque soit le résultat de B, le résultat de la formule ne peut être que:
=1*B ou =0*B...
Le premier cas nous renvoie directement à la partie 2 de ce post puisque
=1*B <=> =B
le second apporte le résultat définitif puisque si H6 est négatif ou égal à
zéro, on aura donc =0*B soit =0.


Dans la condition Si la zone après FRANC, je ne comprends pas ta division


2)
Le cas "valeur 0" ayant été traité précédemment, l'intérêt est de trouver
ici un coefficient, unique s'il existe, qui pourrait "lier" valeurs et
montants...
Si les valeurs avaient été 0 - 1000 - 2000 - 3000 et les montants
correspondants 1 - 2 - 3 - 4, la formule finale (sans nécessiter de
conditions SI() successives) aurait pu être:
=MIN(4;1+ENT(H6/1000)) puisque nous avions une incrémentation de +1 sur les
montants, et de +1 également sur l'entier des (valeurs/1000).
Le "problème" vient donc ici du "montant 500" qui ne respecte pas cette
incrémentation de +1.
Cependant; en ajoutant 0.5 aux valeurs divisées par 1000, on obtient les
montants suivants 1 - 1.5 - 2.5 - 3.5. Il suffit donc maintenant d'utiliser
une fonction afin d'arrondir les valeurs obtenues, c'est le rôle ici de la
fonction FRANC(), et portera les valeurs à 1 - 2 - 3 - 4

Voili, voilou...
J'espère ne pas avoir été trop "du côté obscur"...


ChrisV
[tiens...? comme Vador !]


"phil.aline.naudin" a écrit dans le message
de news: 42adc3df$0$25039$
Salut,
Pour ta formule :
=(H6>0)*SI(H6<500;0,5;MIN(4;FRANC(0,5+H6/1000;0)))
les parties qui me bloquent sont :
avant la condition Si tu donnes =(H6>0)* Que veut dire * ?
Dans la condition Si la zone après FRANC, je ne comprends pas ta division

et surtout tu arrives à un résultat mieux cadré que moi !

Merci


"ChrisV" a écrit dans le message de news:

Re,

Par contre tu pourrais m'expliquer ta formule car je sèche ...


Quelle partie exactement...?


ChrisV


"phil.aline.naudin" a écrit dans le
message de news: 42a9d888$0$1251$
Merci à Tous pour les réponses,
Ta formule fonctionne nettement mieux que la mienne.
ailleurs la mienne fonctionne mais je me demande comment !!!

Par contre tu pourrais m'expliquer ta formule car je sèche ...
merci et encore respect


"ChrisV" a écrit dans le message de news:

Salut Alain,

Au regard aux autres bornes, ça me paraissait logique...
Nous verrons ce qu'en dit le demandeur... s'il revient !


ChrisV

nb: tu es à Paris le 27 ?


"AV" a écrit dans le message de news:
%
Bel effort !
(Un doute sur l'inclusion ou non de la borne 3000)

AV




















Avatar
phil.aline.naudin
Bon Ben là faut avouer y a qu'un mot : RESPECT
D'accord le * je capte, mais pour le reste je vais me greffer un cerveau et
je reviens vers toi demain...

Encore merci
"ChrisV" a écrit dans le message de news:

Re,

=(H6>0)*SI(H6<500;0,5;MIN(4;FRANC(0,5+H6/1000;0)))


avant la condition Si tu donnes =(H6>0)* Que veut dire * ?


1)
c'est tout simplement l'opérateur arithmétique "multiplier"
pour d'avantage de lisibilité, notons:
A=(H6>0) et
B=SI(H6<500;0,5;MIN(4;FRANC(0,5+H6/1000;0)))
on peut donc écrire la formule initiale ainsi =A*B
(H6>0) ne peut renvoyer que deux valeurs possibles... vrai ou faux
VRAI étant interprété comme égal à 1, et
FAUX comme égal à 0
quelque soit le résultat de B, le résultat de la formule ne peut être que:
=1*B ou =0*B...
Le premier cas nous renvoie directement à la partie 2 de ce post puisque
=1*B <=> =B
le second apporte le résultat définitif puisque si H6 est négatif ou égal
à zéro, on aura donc =0*B soit =0.


Dans la condition Si la zone après FRANC, je ne comprends pas ta division


2)
Le cas "valeur 0" ayant été traité précédemment, l'intérêt est de trouver
ici un coefficient, unique s'il existe, qui pourrait "lier" valeurs et
montants...
Si les valeurs avaient été 0 - 1000 - 2000 - 3000 et les montants
correspondants 1 - 2 - 3 - 4, la formule finale (sans nécessiter de
conditions SI() successives) aurait pu être:
=MIN(4;1+ENT(H6/1000)) puisque nous avions une incrémentation de +1 sur
les montants, et de +1 également sur l'entier des (valeurs/1000).
Le "problème" vient donc ici du "montant 500" qui ne respecte pas cette
incrémentation de +1.
Cependant; en ajoutant 0.5 aux valeurs divisées par 1000, on obtient les
montants suivants 1 - 1.5 - 2.5 - 3.5. Il suffit donc maintenant
d'utiliser une fonction afin d'arrondir les valeurs obtenues, c'est le
rôle ici de la fonction FRANC(), et portera les valeurs à 1 - 2 - 3 - 4

Voili, voilou...
J'espère ne pas avoir été trop "du côté obscur"...


ChrisV
[tiens...? comme Vador !]


"phil.aline.naudin" a écrit dans le message
de news: 42adc3df$0$25039$
Salut,
Pour ta formule :
=(H6>0)*SI(H6<500;0,5;MIN(4;FRANC(0,5+H6/1000;0)))
les parties qui me bloquent sont :
avant la condition Si tu donnes =(H6>0)* Que veut dire * ?
Dans la condition Si la zone après FRANC, je ne comprends pas ta division

et surtout tu arrives à un résultat mieux cadré que moi !

Merci


"ChrisV" a écrit dans le message de news:

Re,

Par contre tu pourrais m'expliquer ta formule car je sèche ...


Quelle partie exactement...?


ChrisV


"phil.aline.naudin" a écrit dans le
message de news: 42a9d888$0$1251$
Merci à Tous pour les réponses,
Ta formule fonctionne nettement mieux que la mienne.
ailleurs la mienne fonctionne mais je me demande comment !!!

Par contre tu pourrais m'expliquer ta formule car je sèche ...
merci et encore respect


"ChrisV" a écrit dans le message de news:

Salut Alain,

Au regard aux autres bornes, ça me paraissait logique...
Nous verrons ce qu'en dit le demandeur... s'il revient !


ChrisV

nb: tu es à Paris le 27 ?


"AV" a écrit dans le message de news:
%
Bel effort !
(Un doute sur l'inclusion ou non de la borne 3000)

AV
























Avatar
JièL Goubert
Bonjoir(c) Chris Vador

Wouhaou... pour une fois que je lis autre chose que des HS, j'en tombe sur
le c...

Bravo pour l'explication, ça fait plaisir de lire quelques chose d'aussi
clair et bien décrit.

clap, clap, clap...

JièL Parisien le 27

Le 14/06/2005 01:43 vous avez écrit ceci :
Re,

=(H6>0)*SI(H6<500;0,5;MIN(4;FRANC(0,5+H6/1000;0)))



avant la condition Si tu donnes =(H6>0)* Que veut dire * ?



1)
c'est tout simplement l'opérateur arithmétique "multiplier"
pour d'avantage de lisibilité, notons:
A=(H6>0) et
B=SI(H6<500;0,5;MIN(4;FRANC(0,5+H6/1000;0)))
on peut donc écrire la formule initiale ainsi =A*B
(H6>0) ne peut renvoyer que deux valeurs possibles... vrai ou faux
VRAI étant interprété comme égal à 1, et
FAUX comme égal à 0
quelque soit le résultat de B, le résultat de la formule ne peut être que:
=1*B ou =0*B...
Le premier cas nous renvoie directement à la partie 2 de ce post puisque
=1*B <=> =B
le second apporte le résultat définitif puisque si H6 est négatif ou égal à
zéro, on aura donc =0*B soit =0.



Dans la condition Si la zone après FRANC, je ne comprends pas ta division



2)
Le cas "valeur 0" ayant été traité précédemment, l'intérêt est de trouver
ici un coefficient, unique s'il existe, qui pourrait "lier" valeurs et
montants...
Si les valeurs avaient été 0 - 1000 - 2000 - 3000 et les montants
correspondants 1 - 2 - 3 - 4, la formule finale (sans nécessiter de
conditions SI() successives) aurait pu être:
=MIN(4;1+ENT(H6/1000)) puisque nous avions une incrémentation de +1 sur les
montants, et de +1 également sur l'entier des (valeurs/1000).
Le "problème" vient donc ici du "montant 500" qui ne respecte pas cette
incrémentation de +1.
Cependant; en ajoutant 0.5 aux valeurs divisées par 1000, on obtient les
montants suivants 1 - 1.5 - 2.5 - 3.5. Il suffit donc maintenant d'utiliser
une fonction afin d'arrondir les valeurs obtenues, c'est le rôle ici de la
fonction FRANC(), et portera les valeurs à 1 - 2 - 3 - 4

Voili, voilou...
J'espère ne pas avoir été trop "du côté obscur"...


ChrisV
[tiens...? comme Vador !]



1 2