Função DateSerial

Retorna uma Variante do subtipo Data para um ano, mês e dia especificados.

Sintaxe

DateSerial(year, month, day)

Argumentos:

  • Year: Um número entre 100 e 9999, inclusive, ou uma expressão numérica.
  • Month: Qualquer expressão numérica.
  • Day: Qualquer expressão numérica.

Comentários

Para especificar uma data, como 31 de dezembro de 1991, o intervalo de números para cada argumento DateSerial deve estar no intervalo aceito para a unidade; ou seja, 1 a 31 para dias e 1 a 12 para meses. No entanto, você também pode especificar datas relativas para cada argumento usando qualquer expressão numérica que represente algum número de dias, meses ou anos antes ou depois de uma determinada data.

O exemplo a seguir usa expressões numéricas em vez de números de data absolutos. Nele, a função DateSerial retorna uma data que é o dia antes do primeiro dia (1 – 1) de dois meses antes de agosto (8 – 2) de 10 anos antes de 1990 (1990 – 10); em outras palavras, 31 de maio 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 o argumento year, valores entre 0 e 99, inclusive, são interpretados como os anos de 1900 a 1999. Para todos os outros argumentos de ano, use um ano completo de quatro dígitos (por exemplo, 1800).

Quando um argumento excede o intervalo aceito desse argumento, ele aumenta para a próxima unidade maior, conforme apropriado. Por exemplo, se você especificar 35 dias, ele será avaliado como um mês e um número de dias, dependendo do ponto no ano em que ele for aplicado. No entanto, se qualquer argumento único estiver fora do intervalo de -32.768 a 32.767, ou se a data especificada pelos três argumentos, diretamente ou por expressão, estiver fora do intervalo aceitável de datas, ocorrerá um erro.

O formato de data de saída é baseado no formato abreviado de data do sistema.

O exemplo a seguir ilustra o uso da função DateSerial:

Exemplo 1:

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

Exemplo 2:

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

Exemplo 3:

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

Exemplo 4:

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

Exemplo 5:

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

Exemplo 6:

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