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

Soustraction avec Datedif

4 réponses
Avatar
Infogroup
Bonjour à toutes et à tous,

En A1, j'ai une date : 20/06/1888
En A2, j'ai une autre date : 05/03/1971

En C1 j'ai la formule Datedif(A1;A2;"y") qui me renvoie une erreur #Valeur

Dans Outils Options la case Calendrier avant 1904 n'est pas cochée.

Quelle modif dois-je faire pour traiter ces dates avant 1904 ?

Merci par avance pour vos infos

Cdl

Infogroup

4 réponses

Avatar
MichDenis
Bonjour Infogroup,

En vba, tu peux utiliser des dates de l'an 99 à l'an 9999.

Une fonction comme celle-là dans un module standard :

Function DateDifference(R As String, Rg As Range, Rg1 As Range)
DateDifference = DateDiff(R, Rg, Rg1)
End Function

Et dans ta cellule = DateDifférence("Y";A1:A2)

Si tu recules dans le temps un peu plus, il faudra faire attention aux différents
calendriers des époques.



"Infogroup" a écrit dans le message de groupe de discussion :

Bonjour à toutes et à tous,

En A1, j'ai une date : 20/06/1888
En A2, j'ai une autre date : 05/03/1971

En C1 j'ai la formule Datedif(A1;A2;"y") qui me renvoie une erreur #Valeur

Dans Outils Options la case Calendrier avant 1904 n'est pas cochée.

Quelle modif dois-je faire pour traiter ces dates avant 1904 ?

Merci par avance pour vos infos

Cdl

Infogroup
Avatar
Infogroup
Merci une nouvelle fois Denis pour tes infos si précieuses.

Cordialement

Infogroup


"MichDenis" a écrit dans le message de
news:e$
Bonjour Infogroup,

En vba, tu peux utiliser des dates de l'an 99 à l'an 9999.

Une fonction comme celle-là dans un module standard :

Function DateDifference(R As String, Rg As Range, Rg1 As Range)
DateDifference = DateDiff(R, Rg, Rg1)
End Function

Et dans ta cellule = DateDifférence("Y";A1:A2)

Si tu recules dans le temps un peu plus, il faudra faire attention aux
différents
calendriers des époques.



"Infogroup" a écrit dans le message de groupe de
discussion :

Bonjour à toutes et à tous,

En A1, j'ai une date : 20/06/1888
En A2, j'ai une autre date : 05/03/1971

En C1 j'ai la formule Datedif(A1;A2;"y") qui me renvoie une erreur #Valeur

Dans Outils Options la case Calendrier avant 1904 n'est pas cochée.

Quelle modif dois-je faire pour traiter ces dates avant 1904 ?

Merci par avance pour vos infos

Cdl

Infogroup



Avatar
christian
Bonjour Infogroup
Regarde ci-dessous les explications (Merci à Modeste).

DATEDIF(date_début;date_fin;unité)

Date_début est une date qui représente la première date, ou date de début,
de la période. Les dates peuvent être entrées sous forme de chaînes de
caractères délimitées par des guillemets (par exemple, "30/1/2001"), sous
forme de numéros de série (par exemple, 36921, qui représente le 30 janvier
2001, si vous utilisez le format de calendrier depuis 1900), ou sous forme
de résultats d'autres formules ou fonctions (par exemple,
DATEVAL("30/1/2001")).

Date_fin est une date qui représente la dernière date, ou date de fin, de
la période.

Unité est le type d'informations qui doit être renvoyé.

Unité Renvoie
"Y" Le nombre d'années entières comprises dans la période.
"M" Le nombre de mois entiers compris dans la période.
"D" Le nombre de jours compris dans la période.
"MD" La différence entre les jours de date_début et date_fin. Les mois
et les années des dates ne sont pas pris en compte.
"YM" La différence entre les mois de date_début et date_fin. Les jours
et les années des dates ne sont pas pris en compte.
"YD" La différence entre les jours de date_début et date_fin. Les
années des dates ne sont pas prises en compte.


Exemples

DATEDIF("1/1/2001";"1/1/2003";"Y") égale 2, c'est-à-dire deux
années
entières dans la période.

DATEDIF("1/6/2001";"15/8/2002";"D") égale 440, c'est-à-dire 440
jours entre
le 1er juin 2001 et le 15 août 2002.

DATEDIF("1/6/2001";"15/8/2002";"YD") égale 75, c'est-à-dire 75
jours entre
le 1er juin et le15 août, sans tenir compte des années des dates.

DATEDIF("1/6/2001";"15/8/2002";"MD") égale 14, c'est-à-dire la
différence
entre 1 et 15 - le jour de date_début et le jour de date_fin - sans tenir
compte des mois et des années des dates.
Microsoft, (N°601)

--
Cordialement
Christian


"Infogroup" a écrit :

Bonjour à toutes et à tous,

En A1, j'ai une date : 20/06/1888
En A2, j'ai une autre date : 05/03/1971

En C1 j'ai la formule Datedif(A1;A2;"y") qui me renvoie une erreur #Valeur

Dans Outils Options la case Calendrier avant 1904 n'est pas cochée.

Quelle modif dois-je faire pour traiter ces dates avant 1904 ?

Merci par avance pour vos infos

Cdl

Infogroup




Avatar
Infogroup
Merci Christian pour toutes ces infos

Cdl

Infogroup


"christian" a écrit dans le message de
news:
Bonjour Infogroup
Regarde ci-dessous les explications (Merci à Modeste).

DATEDIF(date_début;date_fin;unité)

Date_début est une date qui représente la première date, ou date de début,
de la période. Les dates peuvent être entrées sous forme de chaînes de
caractères délimitées par des guillemets (par exemple, "30/1/2001"), sous
forme de numéros de série (par exemple, 36921, qui représente le 30
janvier
2001, si vous utilisez le format de calendrier depuis 1900), ou sous forme
de résultats d'autres formules ou fonctions (par exemple,
DATEVAL("30/1/2001")).

Date_fin est une date qui représente la dernière date, ou date de fin, de
la période.

Unité est le type d'informations qui doit être renvoyé.

Unité Renvoie
"Y" Le nombre d'années entières comprises dans la période.
"M" Le nombre de mois entiers compris dans la période.
"D" Le nombre de jours compris dans la période.
"MD" La différence entre les jours de date_début et date_fin. Les mois
et les années des dates ne sont pas pris en compte.
"YM" La différence entre les mois de date_début et date_fin. Les jours
et les années des dates ne sont pas pris en compte.
"YD" La différence entre les jours de date_début et date_fin. Les
années des dates ne sont pas prises en compte.


Exemples

DATEDIF("1/1/2001";"1/1/2003";"Y") égale 2, c'est-à-dire deux
années
entières dans la période.

DATEDIF("1/6/2001";"15/8/2002";"D") égale 440, c'est-à-dire 440
jours entre
le 1er juin 2001 et le 15 août 2002.

DATEDIF("1/6/2001";"15/8/2002";"YD") égale 75, c'est-à-dire 75
jours entre
le 1er juin et le15 août, sans tenir compte des années des dates.

DATEDIF("1/6/2001";"15/8/2002";"MD") égale 14, c'est-à-dire la
différence
entre 1 et 15 - le jour de date_début et le jour de date_fin - sans tenir
compte des mois et des années des dates.
Microsoft, (N°601)

--
Cordialement
Christian


"Infogroup" a écrit :

Bonjour à toutes et à tous,

En A1, j'ai une date : 20/06/1888
En A2, j'ai une autre date : 05/03/1971

En C1 j'ai la formule Datedif(A1;A2;"y") qui me renvoie une erreur
#Valeur

Dans Outils Options la case Calendrier avant 1904 n'est pas cochée.

Quelle modif dois-je faire pour traiter ces dates avant 1904 ?

Merci par avance pour vos infos

Cdl

Infogroup