Función DateSerial

Devuelve una variante de subtipo Date para un año, mes y día especificados.

Sintaxis

DateSerial(year, month, day)

Argumentos:

  • Year: número entre 100 y 9999, ambos incluidos, o una expresión numérica.
  • Month: cualquier expresión numérica.
  • Day: cualquier expresión numérica.

Observaciones

Para especificar una fecha, como el 31 de diciembre de 1991, el rango de números para cada argumento de DateSerial debe estar en el rango aceptado para la unidad; es decir, del 1 al 31 para días y del 1 al 12 para meses. Sin embargo, también puede especificar fechas relativas para cada argumento mediante cualquier expresión numérica que represente un número determinado de días, meses o años antes o después de una fecha concreta.

En el ejemplo siguiente se utilizan expresiones numéricas en lugar de números de fecha absoluta. Aquí, la función DateSerial devuelve una fecha que es el día anterior al primer día (1-1) de dos meses antes de agosto (8-2) de 10 años antes de 1990 (1990-10); es decir, el 31 de mayo de 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

Para el argumento year, los valores entre 0 y 99, inclusive, se interpretan como los años 1900-1999. Para todos los demás argumentos year, utilice un año completo de cuatro dígitos (por ejemplo, 1800).

Cuando un argumento supera el rango aceptado para ese argumento, se incrementa a la siguiente unidad mayor según corresponda. Por ejemplo, si especifica 35 días, se evalúa como un mes y un número determinado de días, según la fecha del año en que se aplique. Sin embargo, si un solo argumento está fuera del rango de -32 768 a 32 767, o si la fecha especificada por los tres argumentos, ya sea directamente o mediante expresión, está fuera del rango de fechas aceptable, se produce un error.

El formato de fecha de salida se basa en el formato de fecha corta del sistema.

En el siguiente ejemplo se muestra el uso de la función DateSerial:

Ejemplo 1:

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

Ejemplo 2:

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

Ejemplo 3:

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

Ejemplo 4:

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

Ejemplo 5:

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

Ejemplo 6:

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