Fonction DateSerial

Renvoie une variante de sous-type Date pour une année, un mois et un jour spécifiés.

Syntaxe

DateSerial(year, month, day)

Arguments :

  • year : nombre compris entre 100 et 9999, ou expression numérique.
  • month : toute expression numérique.
  • day : toute expression numérique.

Remarques

Afin d'indiquer une date, comme le 31 décembre 1991, la plage de valeurs pour chaque argument DateSerial doit être comprise dans la plage acceptée de l'unité, c'est-à-dire entre 1 et 31 pour les jours et entre 1 et 12 pour les mois. Toutefois, vous pouvez également spécifier des dates relatives pour chaque argument à l'aide d'une expression numérique qui représente un certain nombre de jours, de mois ou d'années avant ou après une certaine date.

L'exemple suivant utilise des expressions numériques plutôt que des dates absolues. Dans ce cas précis, la fonction DateSerial renvoie une date située un jour avant le premier jour (1 - 1), deux mois avant le mois d'août (8 - 2) et 10 ans avant 1990 (1990 - 10), soit le 31 mai 1980.

Dim MyDate1, MyDate2
MyDate1 = DateSerial(1970, 1, 1)   
Output: 01-Jan-70
MyDate2 = DateSerial(1990 - 10, 8 - 2, 1 - 1)  
'Output: 31-May-80

Pour l'argument year, les valeurs comprises entre 0 et 99 correspondent aux années 1900-1999. Pour tous les autres arguments year, saisissez une année complète à quatre chiffres (par exemple, 1800).

Lorsqu'un argument dépasse la plage acceptée correspondante, il passe à l'unité supérieure suivante. Par exemple, si vous indiquez 35 jours, cela correspond à un mois et un certain nombre de jours, en fonction de l'année concernée. Toutefois, si un argument se trouve en dehors de la plage -32 768 à 32 767, ou si la date spécifiée par les trois arguments, directement ou par expression, se situe en dehors de la plage de dates acceptable, une erreur survient.

Le format de date de sortie repose sur le format de date courte du système.

Les exemples suivants illustrent l'utilisation de la fonction DateSerial :

Exemple 1 :

Dim MyDate1
MyDate1 = DateSerial(1970, 1, 1)  
'Output: 01-Jan-70

Exemple 2 :

Dim MyDate2
MyDate2 = DateSerial(1990 - 10, 8 - 2, 1 - 1)   
'Output: 31-May-80

Exemple 3 :

Dim MyDate3
MyDate3 = DateSerial(2025, 15, 40)  
'Output: 09-Apr-26

Exemple 4 :

Dim MyDate4
MyDate4 = DateSerial(2025, 1, 0)   
'Output: 31-Dec-24

Exemple 5 :

Dim MyDate5
MyDate5 = DateSerial(50, 1, 1)   
'Output: 01-Jan-50

Exemple 6 :

Dim MyDate6
MyDate6 = DateSerial(99, 12, 31)   
'Output: 31-Dec-99