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

Inverse de datedif

7 réponses
Avatar
J
Bonjour à tous

J'ai, sur une ligne :
en C le 31 décembre d'une année (obtenue par formule, format date
jj/mm/aaaa)
en D un nombre de jours depuis la fin décembre (saisie manuelle)
en E un nombre de mois depuis la fin décembre (saisie manuelle)

Je cherche, par formule, à avoir en B la date correspondant au nombre de
jours et de mois en D et E qui s'écoulent jusqu'au 31 décembre qui est en C.
Ex : jours = 3, mois = 2, on obtient "29 octobre"

En quelque sorte l'inverse de datedif.
J'ai essayé les formules suivantes, mais cela ne va pas.
'=DATE(ANNEE(C12);MOIS(C12)-E12;JOUR(C12)-D12)
'=DATE(ANNEE(C12);MOIS(C12)-E12;JOUR(C12)-D12+1)

Merci pour l'aide.
@+
J@@(attention gros décalage horaire, merci pour la patience)

7 réponses

Avatar
François
Bonjour (ou Bonsoir ?)

avec date en C1
décalage jours en D1
décalage mois en E1

formule pour B1 : ÚTE(ANNEE(C1);MOIS(C1)-E1;JOUR(C1)-D1)

François

"J@@" a écrit dans le message de news:

Bonjour à tous

J'ai, sur une ligne :
en C le 31 décembre d'une année (obtenue par formule, format date
jj/mm/aaaa)
en D un nombre de jours depuis la fin décembre (saisie manuelle)
en E un nombre de mois depuis la fin décembre (saisie manuelle)

Je cherche, par formule, à avoir en B la date correspondant au nombre de
jours et de mois en D et E qui s'écoulent jusqu'au 31 décembre qui est en
C.
Ex : jours = 3, mois = 2, on obtient "29 octobre"

En quelque sorte l'inverse de datedif.
J'ai essayé les formules suivantes, mais cela ne va pas.
'ÚTE(ANNEE(C12);MOIS(C12)-E12;JOUR(C12)-D12)
'ÚTE(ANNEE(C12);MOIS(C12)-E12;JOUR(C12)-D12+1)

Merci pour l'aide.
@+
J@@(attention gros décalage horaire, merci pour la patience)


Avatar
abigael
Bonjour,

la formule =MOIS.DECALER(C2;-E2) avec en C2 "31/12/2009" et en E2 "2" te
donnes déjà le mois de novembre.
c'est un début
.... à creuser pour la suite

Abigael

"J@@" a écrit :

Bonjour à tous

J'ai, sur une ligne :
en C le 31 décembre d'une année (obtenue par formule, format date
jj/mm/aaaa)
en D un nombre de jours depuis la fin décembre (saisie manuelle)
en E un nombre de mois depuis la fin décembre (saisie manuelle)

Je cherche, par formule, à avoir en B la date correspondant au nombre de
jours et de mois en D et E qui s'écoulent jusqu'au 31 décembre qui est en C.
Ex : jours = 3, mois = 2, on obtient "29 octobre"

En quelque sorte l'inverse de datedif.
J'ai essayé les formules suivantes, mais cela ne va pas.
'ÚTE(ANNEE(C12);MOIS(C12)-E12;JOUR(C12)-D12)
'ÚTE(ANNEE(C12);MOIS(C12)-E12;JOUR(C12)-D12+1)

Merci pour l'aide.
@+
J@@(attention gros décalage horaire, merci pour la patience)



Avatar
François
Pardon mais, je t'ai donné la réponse trop vite ...
elle est fausse !
quand en C1 on mets le 31/12/2008
et en B1 : ÚTE(ANNEE($C$1);MOIS($C$1)-1;JOUR($C$1))
cela donne effectivement une erreur à savoir : 01/12/2008
(alors qu'il met bien 11 comme valeur pour =MOIS($C$1)-1)

Je ne comprends pas pourquoi

Une (bonne) réponse va peut-être arriver ... ?

François

"J@@" a écrit dans le message de news:

Bonjour à tous

J'ai, sur une ligne :
en C le 31 décembre d'une année (obtenue par formule, format date
jj/mm/aaaa)
en D un nombre de jours depuis la fin décembre (saisie manuelle)
en E un nombre de mois depuis la fin décembre (saisie manuelle)

Je cherche, par formule, à avoir en B la date correspondant au nombre de
jours et de mois en D et E qui s'écoulent jusqu'au 31 décembre qui est en
C.
Ex : jours = 3, mois = 2, on obtient "29 octobre"

En quelque sorte l'inverse de datedif.
J'ai essayé les formules suivantes, mais cela ne va pas.
'ÚTE(ANNEE(C12);MOIS(C12)-E12;JOUR(C12)-D12)
'ÚTE(ANNEE(C12);MOIS(C12)-E12;JOUR(C12)-D12+1)

Merci pour l'aide.
@+
J@@(attention gros décalage horaire, merci pour la patience)


Avatar
Daniel.C
Bonjour.
J'ai (encore) du mal à comprendre; DATEDIF donne 2 mois 2 jours entre
le 29/10/2008 et le 31/12/2008. Si on utilise la formule :
ÚTE(2008;12-2;31-2)
c'est ce qu'on obtient.
Cordialement.
Daniel

Bonjour à tous

J'ai, sur une ligne :
en C le 31 décembre d'une année (obtenue par formule, format date jj/mm/aaaa)
en D un nombre de jours depuis la fin décembre (saisie manuelle)
en E un nombre de mois depuis la fin décembre (saisie manuelle)

Je cherche, par formule, à avoir en B la date correspondant au nombre de
jours et de mois en D et E qui s'écoulent jusqu'au 31 décembre qui est en C.
Ex : jours = 3, mois = 2, on obtient "29 octobre"

En quelque sorte l'inverse de datedif.
J'ai essayé les formules suivantes, mais cela ne va pas.
'ÚTE(ANNEE(C12);MOIS(C12)-E12;JOUR(C12)-D12)
'ÚTE(ANNEE(C12);MOIS(C12)-E12;JOUR(C12)-D12+1)

Merci pour l'aide.
@+
J@@(attention gros décalage horaire, merci pour la patience)


Avatar
Daniel.C
Bonjour.
Si tu mets :
ÚTE(ANNEE($C$1);MOIS($C$1)-1;JOUR($C$1))
tu obtiens 31/11/2008 converti en 01/12/2008.
Cordialement.
Daniel

Pardon mais, je t'ai donné la réponse trop vite ...
elle est fausse !
quand en C1 on mets le 31/12/2008
et en B1 : ÚTE(ANNEE($C$1);MOIS($C$1)-1;JOUR($C$1))
cela donne effectivement une erreur à savoir : 01/12/2008
(alors qu'il met bien 11 comme valeur pour =MOIS($C$1)-1)

Je ne comprends pas pourquoi

Une (bonne) réponse va peut-être arriver ... ?

François

"J@@" a écrit dans le message de news:

Bonjour à tous

J'ai, sur une ligne :
en C le 31 décembre d'une année (obtenue par formule, format date
jj/mm/aaaa)
en D un nombre de jours depuis la fin décembre (saisie manuelle)
en E un nombre de mois depuis la fin décembre (saisie manuelle)

Je cherche, par formule, à avoir en B la date correspondant au nombre de
jours et de mois en D et E qui s'écoulent jusqu'au 31 décembre qui est en
C.
Ex : jours = 3, mois = 2, on obtient "29 octobre"

En quelque sorte l'inverse de datedif.
J'ai essayé les formules suivantes, mais cela ne va pas.
'ÚTE(ANNEE(C12);MOIS(C12)-E12;JOUR(C12)-D12)
'ÚTE(ANNEE(C12);MOIS(C12)-E12;JOUR(C12)-D12+1)

Merci pour l'aide.
@+
J@@(attention gros décalage horaire, merci pour la patience)




Avatar
Sam
Bonjour,
le pb vient du dernier jour du mois qui est soit le 30 ou le 31
Il faut passer au lendemain qui est un 1° et faire ta soustraction en
enlevant 1
ça donne pour la ligne 2
ÚTE(ANNEE(C2+1);MOIS(C2+1)-E2;JOUR(C2+1)-D2-1)

mais pour ton exemple de 3 jours 2 mois j'obtiens le 28 octobre
en enlevant 2 mois j'obtiens le 31 octobre
en enlevant 1 jour j'obtiens le 30 octobre
en enlevant encore 1 jour j'obtiens le 29 octobre
en enlevant encore 1 jour j'obtiens le 28 octobre

Cordialement
Michel dit "Sam"

"J@@" a écrit dans le message de news:

Bonjour à tous

J'ai, sur une ligne :
en C le 31 décembre d'une année (obtenue par formule, format date
jj/mm/aaaa)
en D un nombre de jours depuis la fin décembre (saisie manuelle)
en E un nombre de mois depuis la fin décembre (saisie manuelle)

Je cherche, par formule, à avoir en B la date correspondant au nombre de
jours et de mois en D et E qui s'écoulent jusqu'au 31 décembre qui est en
C.
Ex : jours = 3, mois = 2, on obtient "29 octobre"

En quelque sorte l'inverse de datedif.
J'ai essayé les formules suivantes, mais cela ne va pas.
'ÚTE(ANNEE(C12);MOIS(C12)-E12;JOUR(C12)-D12)
'ÚTE(ANNEE(C12);MOIS(C12)-E12;JOUR(C12)-D12+1)

Merci pour l'aide.
@+
J@@(attention gros décalage horaire, merci pour la patience)


Avatar
J
Bonjour à tous
Merci à François, abigael, Daniel.C et Sam.
C'est la solution de Sam qui colle à ce que je cherchais (en effet pas
exactement l'inverse de datedif, honte à moi)

Je cherchais à ce que la valeur en Jours (se trouvant en D) et Mois (se
trouvant en E) ajoutée à la date en B donne le 31/12 qui est en C.

ex: B C D jours E mois
13/02/2009 31/12/2009 15 10
c'est à dire 15 jours pour finir le mois de février et 10 mois pour
finir l'année.

Mon explication était tortueuse :-(

ÚTE(ANNEE(C2+1);MOIS(C2+1)-E2;JOUR(C2+1)-D2-1)
fonctionne, apparemment comme souhaité, résolvant mon pb de dernier jour
du mois, mais bien sûr avec un écart par rapport à datedif.

Un grand merci à tous. Jamais faciles, pour moi, les pb de dates!!

Cordialement
J@@ (18h, 28°C)


Sam a écrit :
Bonjour,
le pb vient du dernier jour du mois qui est soit le 30 ou le 31
Il faut passer au lendemain qui est un 1° et faire ta soustraction en
enlevant 1
ça donne pour la ligne 2
ÚTE(ANNEE(C2+1);MOIS(C2+1)-E2;JOUR(C2+1)-D2-1)

mais pour ton exemple de 3 jours 2 mois j'obtiens le 28 octobre
en enlevant 2 mois j'obtiens le 31 octobre
en enlevant 1 jour j'obtiens le 30 octobre
en enlevant encore 1 jour j'obtiens le 29 octobre
en enlevant encore 1 jour j'obtiens le 28 octobre

Cordialement
Michel dit "Sam"

"J@@"
J'ai, sur une ligne :
en C le 31 décembre d'une année (obtenue par formule, format date
jj/mm/aaaa)
en D un nombre de jours depuis la fin décembre (saisie manuelle)
en E un nombre de mois depuis la fin décembre (saisie manuelle)

Je cherche, par formule, à avoir en B la date correspondant au nombre de
jours et de mois en D et E qui s'écoulent jusqu'au 31 décembre qui est en
C.
Ex : jours = 3, mois = 2, on obtient "29 octobre"

En quelque sorte l'inverse de datedif.
J'ai essayé les formules suivantes, mais cela ne va pas.
'ÚTE(ANNEE(C12);MOIS(C12)-E12;JOUR(C12)-D12)
'ÚTE(ANNEE(C12);MOIS(C12)-E12;JOUR(C12)-D12+1)