OVH Cloud OVH Cloud

Aide pour l'elaboration de formule complexe

3 réponses
Avatar
Sebastien de Tiege
Bonjour,

Je souhaite élaborer une feuille de calcul avec Excel pour calculer un coût
de location de voiture.

Le coût se calcule sur une base horaire et une base kilométrique. Il faut
savoir que je peut payer à l'heure ou à la journée (24h). Il faut savoir
aussi que si je prend la voiture plus de 12h, c'est le coût pour 24h qui est
compté. Donc, je souhaite mettre dans une colonne "Durée", la durée totale
de la location en heures. Si je prends une voiture 2 jours, je mettrai 48h.

Donc en résumé, le coût horaire est 'Y' le coût par journée est 'Z'.

A cela s'ajoute les kilomètre. Jusque 100 km, cela coûte 'M' euros et à
partir de 101 km, cela coûte 'N' euros.

Donc, si possible, je mets dans une colonne le nombre d'heure, dans la
suivante, le nombre de km et dans la dernière, j'ai le montant total de ce
que je dois payer en tenant compte des paramètres 'M', 'N', 'Y' et 'Z'.

Pour les heures, cela doit être sous cette forme : 1 ou 1,5. C'est le seul
chiffre décimal possible, les voitures se prenant à la demi-heure.

Qui peut m'aider ? Si besoin d'autres renseignements, posez vos questions.

Merci et à bientôt,
--
Pinpon
Pour me répondre par mail, merci de retirer le nospam.
Mon site de photos ? Il est ici : <http://www.detiege.net>

3 réponses

Avatar
poypoy
Bonjour Sebastien,

J'ai supposé que tu voulais la moins cher entre les 2 possibilités horaires
donc voici une formule excel :

en A1 le taux horaire heure
en A2 le taux horaire jour
en A3 le taux kilométrique < 100
en A4 le taux kilométrique >100

en B1 le nombre d'heure du trajet
en B2 le nombre de kilomètre du trajet
en B" le calcul du nombre d'heure à payer

=IF(B1-ROUNDDOWN(B1;0)<0,5;IF(B1-ROUNDDOWN(B1;0)=0;B1;ROUNDDOWN(B1;0)+0,5);ROUNDUP(B1;0))

la formule est alors :

=IF(B2>100;MIN(A1*B3+A4*B2;A2*ROUNDUP(B3/24;0)+A4*B2);MIN(A1*B3+A3*B2;A2*ROUNDUP(B3/24;0)+A3*B2))

J suis en excel anglais donc si ca ne marche pas, remplace if par si et
roundup par la fonction qui arondit à l'entier supérieur (désolé je ne me
rappele plus du nom)

Toutefois, ici tu ne sais pas quelle est la solution la moins chère, tu sais
juste le résultat. Si tu veux la savoir, tu peux utiliser un format
conditionnel en comparant A1*B3 et A2*ROUNDUP(B3/24;0).

Si tu as des questions n'hésite pas

Cordialement
Benjamin



Bonjour,

Je souhaite élaborer une feuille de calcul avec Excel pour calculer un coût
de location de voiture.

Le coût se calcule sur une base horaire et une base kilométrique. Il faut
savoir que je peut payer à l'heure ou à la journée (24h). Il faut savoir
aussi que si je prend la voiture plus de 12h, c'est le coût pour 24h qui est
compté. Donc, je souhaite mettre dans une colonne "Durée", la durée totale
de la location en heures. Si je prends une voiture 2 jours, je mettrai 48h.

Donc en résumé, le coût horaire est 'Y' le coût par journée est 'Z'.

A cela s'ajoute les kilomètre. Jusque 100 km, cela coûte 'M' euros et à
partir de 101 km, cela coûte 'N' euros.

Donc, si possible, je mets dans une colonne le nombre d'heure, dans la
suivante, le nombre de km et dans la dernière, j'ai le montant total de ce
que je dois payer en tenant compte des paramètres 'M', 'N', 'Y' et 'Z'.

Pour les heures, cela doit être sous cette forme : 1 ou 1,5. C'est le seul
chiffre décimal possible, les voitures se prenant à la demi-heure.

Qui peut m'aider ? Si besoin d'autres renseignements, posez vos questions.

Merci et à bientôt,
--
Pinpon
Pour me répondre par mail, merci de retirer le nospam.
Mon site de photos ? Il est ici : <http://www.detiege.net>



Avatar
CAP2
Salut,

c'est un peu beurk, mais ça doit marcher avec en A1 la durée de location et
en B1 le kilométrage (remplace M, N, Y et Z par leurs vraies valeurs)...

=SI(B1<100;SI(A1<12;Y*A1+M;Z+M);SI(A1<12;Y*A1+N;Z+N))

Ca marche ?

CAP2
Avatar
Sebastien de Tiege
On 11-Oct-2004, =?Utf-8?B?cG95cG95?=
wrote:

Bonjour Sebastien,


Bonjour Benjamin,

J'ai suppose que tu voulais la moins cher entre les 2 possibilites
horaires donc voici une formule excel :


Tu as bien supposé...

en A1 le taux horaire heure
en A2 le taux horaire jour
en A3 le taux kilometrique < 100
en A4 le taux kilometrique >100

en B1 le nombre d'heure du trajet
en B2 le nombre de kilometre du trajet
en B3 le calcul du nombre d'heure a  payer

=IF(B1-ROUNDDOWN(B1;0)<0,5;IF(B1-ROUNDDOWN(B1;0)=0;B1;ROUNDDOWN(B1;0)+0,5);ROUNDUP(B1;0))

la formule est alors :

=IF(B2>100;MIN(A1*B3+A4*B2;A2*ROUNDUP(B3/24;0)+A4*B2);MIN(A1*B3+A3*B2;A2*ROUNDUP(B3/24;0)+A3*B2))

Je suis en excel anglais donc si ca ne marche pas, remplace if par si et
roundup par la fonction qui arondit a  l'entier superieur (desole je
ne me rappele plus du nom)


Effectivement, j'ai du remplacer les IJ par des si et les ROUNDUP par
"ARRONDI.SUP"

Si tu as des questions n'hesite pas


La formule semble marche correctement. Je voudrais savoir maintenant une
chose. Je fais une feuille pour 1 mois complet. Donc, chaque ligne
correspond à 1 jour du mois. Si je mets la formule comme tu me la proposes,
et que je fais du copier/coller, Excel va changer toutes les variables avec
la ligne suivante (B2 devient B3, A1 devient A2,...). Or, si les variables
B... doivent effectivement changer, les variables A... ne le doivent pas.

Comment faire du copier/coller "intelligent" ?

Merci pour ton aide et A+

Cordialement
Benjamin




--
Pinpon
Pour me répondre par mail, merci de retirer le nospam.
Mon site de photos ? Il est ici : <http://www.detiege.net>