Fonction DateDiff

Renvoie une Variant (Long) qui spécifie le nombre d’intervalles de temps entre deux dates données.

Syntaxe

DateDiff(interval, date1, date2, [ firstdayofweek, [ firstweekofyear ]] )

La syntaxe de la fonction DateDiff comporte les arguments nommés suivants :

Partie Description
interval Obligatoire. Expression de chaîne qui représente l’intervalle de temps utilisé pour calculer la différence entredate1 et date2.
date1, date2 Obligatoire ; Variante (Date). Les deux dates à utiliser dans le calcul.
firstdayofweek Facultatif. Constante indiquant le premier jour de la semaine. Si ce n’est pas précisé, Dimanche est utilisé par défaut.
firstweekofyear Facultatif. Constante spécifiant la première semaine de l’année. Si ce ne pas spécifié, la première semaine est par défaut la semaine dans laquelle se trouve le 1er janvier.

Paramètres

L’argumentinterval a les paramètres suivants :

Paramètre Description
yyyy Année
q Trimestre
m Mois
y Jour de l’année
d Jour
w Jour de la semaine
ww Semaine
h Heure
n Minute
s Deuxième

firstdayofweek a les paramètres suivants :

Constante Valeur Description
vbUseSystem 0 Utilise le paramètre API NLS.
vbSunday 1 Dimanche (par défaut))
vbMonday 2 Lundi
vbTuesday 3 Mardi
vbWednesday 4 Mercredi
vbThursday 5 Jeudi
vbFriday 6 Vendredi
vbSaturday 7 Samedi

L’argument firtweekofyear peut prendre les valeurs suivantes :

Constante Valeur Description
vbUseSystem 0 Utilise le paramètre API NLS.
vbFirstJan1 1 Commence par la semaine qui contient le 1er janvier (par défaut ).
vbFirstFourDays 2 Commence par la première semaine contenant au moins quatre jours dans la nouvelle année.
vbFirstFullWeek 3 Commence par la première semaine complète de l’année.

Remarques

Utilisez la fonction DateDiff pour déterminer combien d’intervalles de temps spécifiés existent entre deux dates. Par exemple, vous pouvez utiliser DateDiff pour calculer le nombre de jours entre deux dates ou le nombre de semaines entre aujourd'hui et la fin de l’année.

Pour calculer le nombre de jours entre date1 et date2, vous pouvez utiliser le Jour de l’année (« a ») ou Jour (« j »). Lorsque l’intervalle est Jour de la semaine (« S »), DateDiff renvoie le nombre de semaines entre deux dates. Si date1 tombe un lundi, DateDiff compte le nombre de lundis jusqu'à date2. Elle comptabilise date2 mais pas date1.

Si intervalle est Semaine (« ss »), toutefois, la fonctionDateDiff renvoie le nombre de semaines du calendrier entre deux dates. Elle compte le nombre de dimanches entre date1 et date2. DateDiff compte date2 si cela tombe un dimanche ; mais elle ne compte pas date1, même si cela tombe un dimanche.

Si date1 correspond à une date postérieure à date2, la fonction DateDiff renvoie un nombre négatif. L’argument firstdayofweeka une incidence sur les calculs utilisant les symboles d’intervalle « s » et « ss ».

Si date1 ou date2 est un littéral date, l’année spécifiée devient partie intégrante de cette date. Toutefois, si date1 à ou date2 est placé entre guillemets doubles (« ») et que vous omettez l’année, l’année en cours est insérée automatiquement dans votre code à chaque fois que l’expressiondate1 à ou date2 est évaluée. Cela permet d’écrire du code qui peut être utilisé pour d’autres années.

En comparant le 31 décembre au 1er janvier de l’année suivante, DateDiff renvoie 1 pour l’Année (« yyyy »), même si un seul jour s’est écoulé.

Remarque

Pour date1 et date2, si le paramètre de la propriétéCalendrier est Grégorien, la date fournie doit être grégorienne. Si le calendrier est hégirien, la date fournie doit être de ce type.

Exemple

Cet exemple utilise la fonction DateDiff pour afficher le nombre de jours entre une date donnée et aujourd’hui.

Dim TheDate As Date    ' Declare variables.
Dim Msg
TheDate = InputBox("Enter a date")
Msg = "Days from today: " & DateDiff("d", Now, TheDate)
MsgBox Msg

Voir aussi

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.