Microsoft 365 Calcule d'une date après le 1er janvier avec prix associé

Yoyo60

XLDnaute Junior
Bonjour à toutes et à tous,

Je me tourne vers vous pour un petit conseil concernant les dates et les prix...

J'essaye de m'expliquer le plus clairement possible.

J'ai une date d'entrée (28/12/2022) et une date de sortie (02/01/2023) soit 5 soirs pour un prix de 100 euros.

J'essaye (tant bien que mal) d'extraire le nombre de jour après le 1er janvier, résultat auquel je retire 1 jour (le jour de départ n'étant pas compté).

J'ai fabriqué une usine à gaz dans le fichier joint pour obtenir ce résultat :)

Mon problème est que dans le cas présenté ci-dessus, je cherche à séparer le prix des jours jusqu'au 31/12/2022 de ceux après le 01/01/2023....

J'ai créer plusieurs formules pour arriver au résultat que je souhaite mais Excel me renvoi un nombre exorbitant.... (en L5 mon résultat devrait être 20 euros)

J'ai regardé dans le format de la cellule mais rien n'y fait...

Quelqu'un aurait t-il une idée de l'endroit qui ne fonctionne pas dans mon fichier ?

Ou peut-être une meilleure façon d'obtenir le résultat souhaité par une formule plus intelligente que mon usine à gaz ?

Par avance merci à tous.

Yoyo
 

Pièces jointes

  • NbJours.xlsx
    16.4 KB · Affichages: 2

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Yoyo,
Mettez donc I5 en format standard ! 😂 Vous aurez 44928.

En fait DATEDIF(1/1/C5;C5;"d") est faux car 1/1/ doit être une chaine de caractère.
Là vous faites "un" divisé par "un" divisé par C5 ( c'est égal à C5 ).
En plus il ne faut prendre que l'année de C5 :
VB:
=SI(B5="";"";SI(ANNEE(C5)>ANNEE(B5);1+DATEDIF("1/1/"&ANNEE(C5);C5;"d");"Faux"))

Un essai en PJ à tester.
 

Pièces jointes

  • NbJours.xlsx
    10.7 KB · Affichages: 1

Yoyo60

XLDnaute Junior
Bonjour Yoyo,
Mettez donc I5 en format standard ! 😂 Vous aurez 44928.

En fait DATEDIF(1/1/C5;C5;"d") est faux car 1/1/ doit être une chaine de caractère.
Là vous faites "un" divisé par "un" divisé par C5 ( c'est égal à C5 ).
En plus il ne faut prendre que l'année de C5 :
VB:
=SI(B5="";"";SI(ANNEE(C5)>ANNEE(B5);1+DATEDIF("1/1/"&ANNEE(C5);C5;"d");"Faux"))

Un essai en PJ à tester.
Bonjour sylvanu

Une fois de plus, votre aide est précieuse et le résultat est parfait.

Merci pour votre implication.

Yoyo
 

Discussions similaires

Statistiques des forums

Discussions
315 097
Messages
2 116 186
Membres
112 679
dernier inscrit
Yupanki