Probleme similaire
Résolu
philric
Messages postés
36
Date d'inscription
Statut
Membre
Dernière intervention
-
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
je cherche a réaliser une macro qui multiplierais un prix de base par un coefficient et selon la valeur du prix de base
je m'explique et pour faire simple:
j'ai un tableau avec en colonne E des prix d'achats
en colonne F des prix de ventes qui doivent être calcule en fonction de la valeur du prix d'achat
si le prix d'achat de 0.01 a 50 on applique cette formule (E1*2.4*1.2)
si le prix d'achat de 50.01 a 100 on applique cette formule (E1*1.7*1.2) si le prix d'achat de 100.01 a 250 on applique cette formule (E1*1.5*1.2) si le prix d'achat de 250.01 a 500 on applique cette formule (E1*1.4*1.2) si le prix d'achat de 500.01 et plus on applique cette formule (E1*1.3*1.2) et il sera copie en cellule F1 correspondante (même ligne)
et ainsi de suite pour toutes les lignes du fichier qui pourra évoluer en nombre de lignes,
y a t'il dans le salle quelqu'un qui peut m'aider les macros ne sont pas ma matière de prédilection
je cherche a réaliser une macro qui multiplierais un prix de base par un coefficient et selon la valeur du prix de base
je m'explique et pour faire simple:
j'ai un tableau avec en colonne E des prix d'achats
en colonne F des prix de ventes qui doivent être calcule en fonction de la valeur du prix d'achat
si le prix d'achat de 0.01 a 50 on applique cette formule (E1*2.4*1.2)
si le prix d'achat de 50.01 a 100 on applique cette formule (E1*1.7*1.2) si le prix d'achat de 100.01 a 250 on applique cette formule (E1*1.5*1.2) si le prix d'achat de 250.01 a 500 on applique cette formule (E1*1.4*1.2) si le prix d'achat de 500.01 et plus on applique cette formule (E1*1.3*1.2) et il sera copie en cellule F1 correspondante (même ligne)
et ainsi de suite pour toutes les lignes du fichier qui pourra évoluer en nombre de lignes,
y a t'il dans le salle quelqu'un qui peut m'aider les macros ne sont pas ma matière de prédilection
A voir également:
- Probleme similaire
- Site similaire a coco - Accueil - Réseaux sociaux
- Remplaçant de Coco : quelles solutions pour tchater gratuitement en ligne ? - Accueil - Réseaux sociaux
- Site similaire zone telechargement - Accueil - Outils
- C'est quoi le site qui remplace coco chat ✓ - Forum Réseaux sociaux
- COCO : où aller ensuite ? ✓ - Forum Réseaux sociaux
6 réponses
Bonsoir,
Comme tes écrats sont réguliers tu peux mettre en F1 :
=E1*CHOISIR(MIN(ENT((E1-0.01)/50)+1;3);2.4;1.7;1.5)*1.2
et recopier vers le bas.
eric
Comme tes écrats sont réguliers tu peux mettre en F1 :
=E1*CHOISIR(MIN(ENT((E1-0.01)/50)+1;3);2.4;1.7;1.5)*1.2
et recopier vers le bas.
eric
Bonjour
avec des SI imbriqués ça pourrait marcher aussi ?
en F1
=Si(E1<=50;E1*2.4*1.2;si(E1<=100;E1*1.7*1.2;si(E1<=250;E1*1.5*1.2;si(E1<=500;E1*1.4*1.2;E1*1.3*1.2))))
avec des SI imbriqués ça pourrait marcher aussi ?
en F1
=Si(E1<=50;E1*2.4*1.2;si(E1<=100;E1*1.7*1.2;si(E1<=250;E1*1.5*1.2;si(E1<=500;E1*1.4*1.2;E1*1.3*1.2))))
merci eric ca marche parfaitement mais pas au delà d'une valeur de 150, peut tu m'expliquer la formule ca me permettra de l'utiliser peut être dans d'autre situations et aussi de comprendre ce qui cloche au dessus de 150
phil
phil
=E1*CHOISIR(MIN(ENT((E1-0.01)/50)+1;3);2.4;1.7;1.5)*1.2
- le 3 en gras indique le nombre de valeurs que tu as défini derrière : 2.4;1.7;1.5
- ENT((E1-0.01)/50)+1 retourne la tranche de 50 concernée
- MIN(ENT((E1-0.01)/50)+1;3) prend la plus petite valeur entre la tranche et le nombre maxi de tranches définies (3 ici)
- CHOISIR(x;2.4;1.7;1.5) retourne la xième valeur de la liste définie ensuite (2.4;1.7;1.5)
J'espère avoir été clair ;-)
eric
- le 3 en gras indique le nombre de valeurs que tu as défini derrière : 2.4;1.7;1.5
- ENT((E1-0.01)/50)+1 retourne la tranche de 50 concernée
- MIN(ENT((E1-0.01)/50)+1;3) prend la plus petite valeur entre la tranche et le nombre maxi de tranches définies (3 ici)
- CHOISIR(x;2.4;1.7;1.5) retourne la xième valeur de la liste définie ensuite (2.4;1.7;1.5)
J'espère avoir été clair ;-)
eric
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
j'ai 5 coef différents voir 1er post donc j'ai mis =E1*CHOISIR(MIN(ENT((E1-0.01)/50)+1;5);2.4;1.7;1.5;1.4;1.3)*1.2
mais j'ai toujours le problème au dessus de 150 j'ai des erreurs
de 150 a 200 il utilise le coef 1.4 au lieu de 1.5
de 200 a 500 il utilise 1.3 au lieu de 1.5 (>250) et 1.4(>500)
mais a partir de 500 c'est bon
phil
mais j'ai toujours le problème au dessus de 150 j'ai des erreurs
de 150 a 200 il utilise le coef 1.4 au lieu de 1.5
de 200 a 500 il utilise 1.3 au lieu de 1.5 (>250) et 1.4(>500)
mais a partir de 500 c'est bon
phil