Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

des Si (beaucoup trop) ou une autre méthode ? (formule XXL nécessaire)

11 réponses
Avatar
SylVBA
Bonjour,

J=92ai en colonne F des chiffres d=92affaires de nos labos=85
En colonne E le % de progression ( / ann=E9e pr=E9c=E9dente) =85 de (=96 qq=
chose
% =E0 +100%...)

Je n=92arrive pas =E0 =E9crire la formule qui me permettrait de calculer le
% de remise attribu=E9e suivant nos r=E8gles (complexes !!!) :

Les contraintes de la formule :

Il y a d=92abord plusieurs palier de CA et pour chaque palier, 2
possibilit=E9s de remise (qui sont diff=E9rentes suivant les paliers)
suivant la progression du CA / ann=E9e pr=E9c=E9dente (en fait 3
possibilit=E9s, mais la troisi=E8me possibilit=E9, ce n=92est pas de remise=
)

Si le client fait =96 de 1499 Euros de Ca =3D il n=92a le droit =E0 rien, l=
a
progression n=92entre, alors m=EAme pas en jeux

Si le client fait entre 1500 et 2499 Euros :
1er cas sa progression est < =E0 4.99% : il n=92a le droit =E0 rien
2eme cas sa progression est comprise entre 5% et 9.99% : il a le droit
=E0 0.5% de remise
3eme cas sa progression est >=3D =E0 10% : Il a le droit =E0 1% de remise

Si le client fait entre 2500 et 4999 Euros :
1er cas sa progression est < =E0 4.99% : il n=92a le droit =E0 rien
2eme cas sa progression est comprise entre 5% et 9.99% : il a le droit
=E0 1% de remise
3eme cas sa progression est >=3D =E0 10% : Il a le droit =E0 1,5% de remise

Si le client fait entre 5000 et 9999 Euros : (idem =E0 la tranche
pr=E9c=E9dente)
1er cas sa progression est < =E0 4.99% : il n=92a le droit =E0 rien
2eme cas sa progression est comprise entre 5% et 9.99% : il a le droit
=E0 1% de remise
3eme cas sa progression est >=3D =E0 10% : Il a le droit =E0 1,5% de remise

Si le client fait plus de 10000 Euros :
1er cas sa progression est < =E0 4.99% : il n=92a le droit =E0 rien
2eme cas sa progression est comprise entre 5% et 9.99% : il a le droit
=E0 1,5% de remise
3eme cas sa progression est >=3D =E0 10% : Il a le droit =E0 2,5% de remise

Je pense pouvoir le faire en VBA avec des select case et autre(s) mais
la, VBA forbidden !!! Il faut le faire en formules, et apr=E8s des
heures de tests, toujours pas de solution qui semble fonctionner=85. Ou
alors une Function VBA mais l=E0 je coince aussi !!!

Je suis muette devant mon clavier, et finalement moins =E0 l=92aise avec
les formules.

Pouvez vous m=92aider, quelles m=E9thodes employer ? On dira que la
colonne de la formule doit =EAtre le G ? Je sollicite les excellents
contributeurs de ce forum afin de m=92=E9clairer,

Je vous remercie d=92avance de votre temps (et de votre savoir), je ne
doute pas que cela ne puisse se faire,

Je reste connect=E9e, et impatiente, pr=EAte =E0 r=E9agir !!

Bonne soir=E9e

SylVBA
Ps: les plages ne sont pas nomm=E9es, mais peuvent l'etre si besoin,
XL2003 XP

10 réponses

1 2
Avatar
Modeste
Bonsour® SylVBA avec ferveur ;o))) vous nous disiez :

J’ai en colonne F des chiffres d’affaires de nos labos…
En colonne E le % de progression ( / année précédente) … de (– qqchose
% à +100%...)

Je n’arrive pas à écrire la formule qui me permettrait de calculer le
% de remise attribuée suivant nos règles (complexes !!!) :

Les contraintes de la formule :

Il y a d’abord plusieurs palier de CA et pour chaque palier, 2
possibilités de remise (qui sont différentes suivant les paliers)
suivant la progression du CA / année précédente (en fait 3
possibilités, mais la troisième possibilité, ce n’est pas de remise)

Si le client fait – de 1499 Euros de Ca = il n’a le droit à rien, la
progression n’entre, alors même pas en jeux

Si le client fait entre 1500 et 2499 Euros :
1er cas sa progression est < à 4.99% : il n’a le droit à rien
2eme cas sa progression est comprise entre 5% et 9.99% : il a le droit
à 0.5% de remise
3eme cas sa progression est >= à 10% : Il a le droit à 1% de remise

Si le client fait entre 2500 et 4999 Euros :
1er cas sa progression est < à 4.99% : il n’a le droit à rien
2eme cas sa progression est comprise entre 5% et 9.99% : il a le droit
à 1% de remise
3eme cas sa progression est >= à 10% : Il a le droit à 1,5% de remise

Si le client fait entre 5000 et 9999 Euros : (idem à la tranche
précédente)
1er cas sa progression est < à 4.99% : il n’a le droit à rien
2eme cas sa progression est comprise entre 5% et 9.99% : il a le droit
à 1% de remise
3eme cas sa progression est >= à 10% : Il a le droit à 1,5% de remise

Si le client fait plus de 10000 Euros :
1er cas sa progression est < à 4.99% : il n’a le droit à rien
2eme cas sa progression est comprise entre 5% et 9.99% : il a le droit
à 1,5% de remise
3eme cas sa progression est >= à 10% : Il a le droit à 2,5% de remise

Je pense pouvoir le faire en VBA avec des select case et autre(s) mais
la, VBA forbidden !!! Il faut le faire en formules



Je reste connectée, et impatiente, prête à réagir !!



;o)))
la remise en pourcentage est :
=CHOISIR(EQUIV(F1;{0;1500;2500;5000;10000};1);0;CHOISIR(EQUIV(E1;{-1;0, 05;0,1};1);0;0,05;0,01);CHOISIR(EQUIV(E1;{-1;0,05;0,1};1)*1;0;0,01;0,015) ;CHOISIR(EQUIV(E1;{-1;0,05;0,1};1);0;0,01;0,015);CHOISIR(EQUIV(E1;{-1;0,0 5;0,1};1);0;0,015;0,025))

ce n'est qu'une seule formule...
le CA determine 5 tranches : EQUIV(F1;{0;1500;2500;5000;10000};1)
la progression determine 3 tranches EQUIV(E1;{-1;0,05;0,1};1)
il suffit pour chaque de CA faire correspondre les pourcentages respectifs de chaque tranche de progression !!!

pfffff... simple non ???
attention aux virgules, points-virgules, parentheses et accolades !!!!!!


--
--
@+
;o)))
Avatar
SylVBA
Bsr modeste,

La je suis très épatée (à la lecture)

je vais essayer de comprendre, et d'appliquer.....

Ta formule donne t'elle le % de résultat: 1,5% par exemple ?

Venant de Modeste, forcément cela doit etre juste, si si je regarde
souvent tes réponses, donc merci d'avoir pris le temps de te pencher
sur mon problème, je planche moi maintenant et ne manquerai pas de
revenir pour te donner mon avis (et certainement mille mercis !!!)

A tout à l'heure

Syl VBA
Avatar
Modeste
Bonsour® Modeste avec ferveur ;o))) vous nous disiez :

pfffff... simple non ???
attention aux virgules, points-virgules, parentheses et accolades
!!!!!!



=CHOISIR(EQUIV(F1;{0;1500;2500;5000;10000};1);0;CHOISIR(EQUIV(E1;{-1;0, 05;0,1};1);0;0,005;0,01);CHOISIR(EQUIV(E1;{-1;0,05;0,1};1);0;0,01;0,015); CHOISIR(EQUIV(E1;{-1;0,05;0,1};1);0;0,01;0,015);CHOISIR(EQUIV(E1;{-1;0,05 ;0,1};1);0;0,015;0,025))

--
--
@+
;o)))
Avatar
Modeste
Bonsour® SylVBA avec ferveur ;o))) vous nous disiez :

La je suis très épatée (à la lecture)

je vais essayer de comprendre, et d'appliquer.....



Ta formule donne t'elle le % de résultat: 1,5% par exemple ?



Modeste n'est qu'un pseudo ;o))))
vitesse et précipitation....
un asterisque "*" s'est subrepticement invité dans la formule
que je répéte ici :
=CHOISIR(EQUIV(F2;{0;1500;2500;5000;10000};1);0;CHOISIR(EQUIV(E2;{-1;0, 05;0,1};1);0;0,005;0,01);CHOISIR(EQUIV(E2;{-1;0,05;0,1};1);0;0,01;0,015); CHOISIR(EQUIV(E2;{-1;0,05;0,1};1);0;0,01;0,015);CHOISIR(EQUIV(E2;{-1;0,05 ;0,1};1);0;0,015;0,025))

le résultat est sous forme décimale, il convient d'utiliser le format : 0,0%



--
--
@+
;o)))
Avatar
SylVBA
re Bsr,

Bien sur en collant je n'y arrive pas (je ne suis m^me pas blonde !!)

j'ai fait un petit tableau de test, voici:

% de progress. CA Calcul Bonus Résultat souhaité
10,00% 1499 #N/A 0
6,00% 2000 0,00% 0,50%
5,01% 3000 5,00% 1%
12,00% 10001 1,00% 2,50%
1,00% 9999 2,50% 0
-4,00% 9999 #NOM? 0
4,99% 9999 #NOM? 0
5,21% 9999 #NOM? 1%

La 3eme colonne (avec le #N/A en premier) est le résultat avec le
collage de la formule

La dernière est le souhait de résultat, peut etre ma prose n'était pa s
assez claire ?
La première colonne c'est le % de progression, la deuxième colonne
c'est le CA

Qu'en pensez vous cher Modeste , y avait t'il une validation
matricielle que je n'ai pas fait ?

Je reste toute attentive à la suite

Bonne soirée, et d'avance merci

SylVBA
Avatar
SylVBA
Re Bsr Modeste

Bien sur c'était juste !!!!!!!!!!!!! si c'est pas la couleur de
cheveux, c'est peut être l'age ????!!!!! Lol

Ce la fonctionne (j'étais en ligne 2 en collant une formule avec des
E1 F1 alors forcément .......)

Par contre à partir des chiffres 9999 j'ai (avec la formule corrigée)
la valeur Erreur #NOM? (sur les 4 dernières valeurs)

Le dernier cas 9999 Euros avec une progression de 5,21% devrait donner
1% car inférieur à 10 000 et progression comprise entre 5 et 9.99%

Merci Modeste, nous ne sommes pas loin ...

Pourquoi cette erreur ?

Bien cordialement et à nouveau merci pour ton aide

SylVBA
Avatar
SylVBA
Cher Modeste,

je crois que l'erreur vient du fait que les nombres entre 5000 et 9999
avec une progression inférieure à 5% donne comme résultat #NOM?

J'ai collé ta dernière version sans l'*

Vous disiez: Modeste n'est qu'un pseudo ;o))))

(Ndlr - C'est le dernier pseudo d'un ex pseudo de la région
lyonnaise ? non ? en 3 lettres ? = question perso, la
curieuse !!!!!!)

Je ne comprends pas pourquoi cette plage de nombres ne fonctionne pas
(encore !!)

merci de ta pédagogie et ton temps

Bien à toi,

Syl VBA
Avatar
Jacquouille
Allo Modeste?

Madame te trouve assez juste.

<<< Venant de Modeste, forcément cela doit etre juste

Madame demande une XXL !! (voir titre msg)

Bon, après cette parenthèse (c'est assez singulier, alors qu'elles vont par
paire), faites-vous donc l'accolade. -))


--
Bien amicalmement,
"Le vin est au repas ce que le parfum est à la femme."

Jacquouille.

"Modeste" a écrit dans le message de news:
%
Bonsour® Modeste avec ferveur ;o))) vous nous disiez :

pfffff... simple non ???
attention aux virgules, points-virgules, parentheses et accolades
!!!!!!



=CHOISIR(EQUIV(F1;{0;1500;2500;5000;10000};1);0;CHOISIR(EQUIV(E1;{-1;0,05;0,1};1);0;0,005;0,01);CHOISIR(EQUIV(E1;{-1;0,05;0,1};1);0;0,01;0,015);CHOISIR(EQUIV(E1;{-1;0,05;0,1};1);0;0,01;0,015);CHOISIR(EQUIV(E1;{-1;0,05;0,1};1);0;0,015;0,025))

--
--
@+
;o)))
Avatar
Modeste
Bonsour® SylVBA avec ferveur ;o))) vous nous disiez :

Je ne comprends pas pourquoi cette plage de nombres ne fonctionne pas
(encore !!)



??????
http://cjoint.com/?lmvetTsMm4

(Ndlr - C'est le dernier pseudo d'un ex pseudo de la région
lyonnaise ? non ? en 3 lettres ? = question perso, la
curieuse !!!!!!)



Non il est irremplaçable...
simplement convalescent, nous espérons tous son retour





--
--
@+
;o)))
Avatar
SylVBA
Bsr Jacquouille, re Bsr Modeste,

La brune à trouvé toute seule !!!!! (une connerie si évidente !!)

un "-" s'est invité dans un Choisir (Choi-sir) alors
forcément ........

Hé Oui, ma première impression restera la bonne ! (<<< Venant de
Modeste, forcément cela doit etre juste )

Merci à nos contributeurs si généreux en temps et pédagogie,

A bientôt c'est sur, en ce moment je suis à fond dans les
tableaux .......................

Bonne soirée à vous tous,

SylVBA
1 2