Retorna uma Variante (Data) que contém a data à qual o intervalo de tempo especificado foi adicionado.
Sintaxe
DateAdd(interval, number, date)
A sintaxe da função DateAdd tem esses argumentos:
| Argumento | Descrição |
|---|---|
| intervalo | Obrigatório. Expressão de cadeia de caracteres que é o intervalo de tempo que você deseja adicionar. |
| Número | Obrigatório. Expressão numérica que é o número de intervalos que você deseja adicionar. Pode ser positivo (para obter datas no futuro) ou negativo (para obter datas no passado). |
| Data | Obrigatório. Variant (Date) ou literal que representa a data à qual o intervalo é adicionado. |
Configurações
O argumento de intervalotem essas configurações:
| Configuração | Descrição |
|---|---|
| aaaa | Ano |
| q | Trimestre |
| m | Mês |
| nte misturada, | Dia do ano |
| d | Dia |
| w | Dia da semana |
| ss | Semana |
| h | Hora |
| n | Minuto |
| a a | Segundo |
Comentários
Você pode usar a função DateAdd para adicionar ou subtrair um intervalo de tempo especificado de uma data. Por exemplo, você pode usar DateAdd para calcular uma data de 30 dias a partir de hoje ou uma hora de 45 minutos a partir de agora.
Para adicionar dias à data, você pode usar Dia do Ano ("y"), Dia ("d") ou Dia da Semana ("w").
A função DateAdd não retornará uma data inválida. O exemplo a seguir adiciona um mês a 31 de janeiro:
DateAdd("m", 1, "31-Jan-95")
Nesse caso, DateAdd retorna 28-Feb-95, não 31-Feb-95. Se a data for 31-Jan-96, ela retornará 29-Feb-96 porque 1996 é um ano bissexto.
Se a data calculada preceder o ano 100 (ou seja, você subtrai mais anos do que está em data), ocorrerá um erro.
Se o número não for um valor Long, ele será arredondado para o número inteiro mais próximo antes de ser avaliado.
Observação
O formato do valor retornado para DateAdd é determinado por configurações de Painel de Controle, não pelo formato passado no argumento de data.
Observação
Para a data, se a configuração da propriedade Calendar for gregoriana, a data fornecida deverá ser gregoriana. Se o calendário for Hijri, a data fornecida deverá ser Hijri. Se os valores mensais forem nomes, o nome deverá ser consistente com a configuração atual da propriedade Calendar. Para minimizar a possibilidade de nomes de mês em conflito com a configuração atual da propriedade Calendar, insira valores numéricos de mês (formato de Data Curta).
Exemplos de consulta
| Expressão. | Resultados |
|---|---|
| SELECT DateAdd("YYYYY", 1,[DateofSale]) AS Expr1 FROM ProductSales; | Retorna os resultados adicionando um ano aos valores de data do campo "DateofSale". |
| SELECT DateAdd("YYYYY",-1,[DateofSale]) AS Expr1 FROM ProductSales; | Retorna os resultados subtraindo 1 ano para os valores de data do campo "DateofSale". |
| SELECT DateAdd("d", 10,[DateofSale]) AS NewDate FROM ProductSales; | Retorna os resultados na coluna "NewDate" adicionando 10 dias aos valores de data do campo "DateofSale". |
| SELECT DateAdd("ww",-1,[DateofSale]) AS NewDate FROM ProductSales; | Retorna os resultados na coluna "NewDate" subtraindo 1 semana (7 dias) dos valores de data do campo "DateofSale". |
Exemplo de VBA
Observação
Exemplos a seguir demonstram o uso dessa função em um módulo VBA (Visual Basic for Applications). Para obter mais informações sobre como trabalhar com o VBA, consulte Referência do Access VBA.
Este exemplo usa uma data como entrada e usa a função DateAdd para exibir uma data correspondente um número especificado de meses no futuro.
Dim FirstDate As Date ' Declare variables.
Dim IntervalType As String
Dim Number As Integer
Dim Msg
IntervalType = "m" ' "m" specifies months as interval.
FirstDate = InputBox("Enter a date")
Number = InputBox("Enter number of months to add")
Msg = "New date: " & _
DateAdd(IntervalType, Number, FirstDate)
MsgBox Msg