Formule tarifs horaires variables en fonction des heures
Résolu
skk201
Messages postés
942
Date d'inscription
Statut
Membre
Dernière intervention
-
skk201 Messages postés 942 Date d'inscription Statut Membre Dernière intervention -
skk201 Messages postés 942 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous ! J'ai un petit challenge pour vous, au sujet d'un question que je n'ai pas réussi à résoudre.
Voilà ce que j'ai :
• Une date de début (avec heure)
• Une date de fin (avec heure)
• Un tarif de 07:00 à 22:59 (Tarif A)
• Un tarif de 23:00 à 06:59 (Tarif B)
J'ai pensé séparé le calcule en 2 étape :
• Calculer le prix des heures du tarif A
• Calculer le prix des heures du tarif B
• Additionner les 2 calculs.
J'aimerais savoir si c'est faisable avec une formule ? Ou est-ce que je devrais passer par le VBA ?
Je vous remercie pour votre emprunt de matière grise.
Je vous souhaite une agréable journée.
Voilà ce que j'ai :
• Une date de début (avec heure)
• Une date de fin (avec heure)
• Un tarif de 07:00 à 22:59 (Tarif A)
• Un tarif de 23:00 à 06:59 (Tarif B)
J'ai pensé séparé le calcule en 2 étape :
• Calculer le prix des heures du tarif A
• Calculer le prix des heures du tarif B
• Additionner les 2 calculs.
J'aimerais savoir si c'est faisable avec une formule ? Ou est-ce que je devrais passer par le VBA ?
Je vous remercie pour votre emprunt de matière grise.
Je vous souhaite une agréable journée.
A voir également:
- Formule tarifs horaires variables en fonction des heures
- Fonction si et - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Excel mise en forme conditionnelle formule - Guide
- Formule mathématique - Télécharger - Études & Formations
- Formule somme excel colonne - Guide
2 réponses
Bonjour
Avec l'heure debut en A2, l'heure fin en B2, le tarif A en D1et le tarif B en E1, en C2 la formule :
=SI(ET(A2>=7/"24";A2<23/24;B2>=7/24;B2<23/24);(B2-A2)*D1*24;SI(A2<7/24;(7/24-A2)*E1*24+(B2-7/24)*D1*24;(23/24-A2)*D1*24+SI(B2>23/24;(B2-23/24)*E1*24;(B2+1/24)*E1*24)))
Il y a peut être plus simple mais je n'ai trouvé que cela pour l'instant
On traite d'abord le cas où toutes les heures sont en tarif A, puis le cas où le début est en tarif B et la fin donc en tarif A et dans le cas contraire (debut en tarif A mais fin en tarif B) on cumule les heures en tarif A avec celles en B (calcul différent selon que l'heure de fin se situe après 23h ou entre 24h et 7h)
Cdlmnt
Via
Avec l'heure debut en A2, l'heure fin en B2, le tarif A en D1et le tarif B en E1, en C2 la formule :
=SI(ET(A2>=7/"24";A2<23/24;B2>=7/24;B2<23/24);(B2-A2)*D1*24;SI(A2<7/24;(7/24-A2)*E1*24+(B2-7/24)*D1*24;(23/24-A2)*D1*24+SI(B2>23/24;(B2-23/24)*E1*24;(B2+1/24)*E1*24)))
Il y a peut être plus simple mais je n'ai trouvé que cela pour l'instant
On traite d'abord le cas où toutes les heures sont en tarif A, puis le cas où le début est en tarif B et la fin donc en tarif A et dans le cas contraire (debut en tarif A mais fin en tarif B) on cumule les heures en tarif A avec celles en B (calcul différent selon que l'heure de fin se situe après 23h ou entre 24h et 7h)
Cdlmnt
Via
Bonjour skk, via
excusez l'incruste
Un truc que j'avais bidouillé (usine à gaz dans les colonnes masquées )pour une copine infirmière il y a quelques temp donnant les heures de nuit et de jour
reste donc à incorporer les tarifs
feuille protégée sans mot de passe
http://www.cjoint.com/c/FEjkBUUZaQt
excusez l'incruste
Un truc que j'avais bidouillé (usine à gaz dans les colonnes masquées )pour une copine infirmière il y a quelques temp donnant les heures de nuit et de jour
reste donc à incorporer les tarifs
feuille protégée sans mot de passe
http://www.cjoint.com/c/FEjkBUUZaQt
Super ! Merci à vous deux.
De mon coté j'ai essayé de trouver une autre manière, mais à cause que l'heure de fin était 23:00 et pas 00:00, ça ne marchait pas.
J'espère que votre collaboration pourra aider d'autres personnes dans le besoin. :) Ou peut-être qu'un jour qqun viendra avec une meilleur solution.
Encore merci à tous ! Bonne journée
De mon coté j'ai essayé de trouver une autre manière, mais à cause que l'heure de fin était 23:00 et pas 00:00, ça ne marchait pas.
J'espère que votre collaboration pourra aider d'autres personnes dans le besoin. :) Ou peut-être qu'un jour qqun viendra avec une meilleur solution.
Encore merci à tous ! Bonne journée
Merci pour ta réponse. :)
Alors:
• Pour le cas de figure où il n'y a que le tarif A , ça joue.
• Pour le cas de figure où il y a les deux tarifs, ça joue.
• Pour le cas de figure où li n'y a que le tarif B, ça semble ne pas marcher. (voir l'exemple ci-dessous)
Est-ce normal que tu aies mis des guillemets au premier "24" de ta formule ?
Je continue de travailler sur deux formules séparée :)
Vous pouvez trouvez le classeur sous ce lien : https://onedrive.live.com/redir?resid=834B81F80B205A7A!75762&authkey=!ABMUq6QoF8RqN4A&ithint=file%2cxlsx
(J'ai sauvegarder au format .xlsx pour ne pas que vous ayez de peur avec les macros.)
Il s'agit d'un classeur qui analyse, ma consommation de location de voiture en car-sharing. Et j'essaye de créer un petit module pour calculer le prix de mes futurs locations.
Pour l'instant laissons les variables "date" de coté, ça ne sera pas le plus compliqué à ajouter. :)
Encore merci pour ton aide.
Je te souhaite une agréable journée.
Non les guillemets ce n'est pas normal ! Je devais être fatigué hier soir !
Bon en fait c'est plus complexe, j'ai repris pas à pas avec des formules indépendantes chaque cas possible (j'espère ne pas en avoir oublié) en tenant compte aussi du fait que les heures peuvent être sur des journées différentes, c'est la colonne tout à droite, ensuite dans la cellule résultat il suffit de retourner la valeur max de cette colonne (la seule qui soit > 0 en fait)
Ensuite j'ai essayé de regrouper toutes ces formules en une seule et là ça fait une vraiment longue formule !
A toi de voir ce que tu préfères :
http://www.cjoint.com/c/FEisTqjmmTB
Cdlmnt
Via