Função SomData

Aplica-se A
Access para Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Devolve uma Variante (Data) que contém uma data com um intervalo de tempo especificado adicionado.

Sintaxe

DateAdd(interval, number, date)

A DateAdd função tem estes argumentos:

Argumento Descrição
interval Obrigatório. Expressão de cadeia que corresponde ao intervalo de tempo que pretende adicionar.
number Obrigatório. Expressão numérica que corresponde ao número de intervalos que pretende adicionar. Pode ser positivo obter datas no futuro ou negativo obter datas no passado.
date Obrigatório. Variante (Data) ou literal que representa a data à qual o intervalo é adicionado.

Definições

O interval argumento tem as seguintes definições:

Definição Descrição
yyyy Ano
q Trimestre
m Mês
y Dia do ano
d Dia
w Dia da semana
ww Semana
h Hora
n Minuto
s Segundo

Observações

Pode utilizar a DateAdd função para somar ou subtrair um intervalo de tempo especificado a uma data. Por exemplo, pode calcular DateAdd uma data a 30 dias a partir da data atual ou uma hora daqui a 45 minutos.

Para adicionar dias ao date, pode utilizar Dia do Ano ("y"), Dia ("d") ou Dia da Semana ("w").

A DateAdd função não devolverá uma data inválida. O exemplo seguinte soma um mês a 31 de janeiro:

DateAdd("m", 1, "31-Jan-95")

Neste caso, DateAdd devolve 28-fev-95 e não 31-fev-95. Se date for 31-Jan-96, devolve 29-Fev-96 porque 1996 é um ano bissexto.

Se a data calculada for anterior ao ano 100, o que significa que subtrai mais anos do que no date, ocorre um erro.

Se number não for um valor Longo, o Access arredonda-o para o número inteiro mais próximo antes de avaliar a expressão.

Nota

O formato do valor devolvido é DateAdd determinado pelas definições de Painel de Controlo e não pelo formato transmitido no argumentodate.

Nota

Para date, se a definição da Calendar propriedade for Gregoriano, a data fornecida tem de ser Gregoriana. Se o calendário for Hijri, a data fornecida tem de ser Hijri. Se os valores de mês forem nomes, o nome deverá corresponder à configuração de propriedade atual Calendar . Para reduzir a probabilidade de conflitos, introduza valores numéricos de meses no formato Data Abreviada.

Exemplos de consulta

Expressão Resultados
SELECT DateAdd("YYYY",1,[DateofSale]) AS Expr1 FROM ProductSales; Soma 1 ano aos valores de data no DateofSale campo.
SELECT DateAdd("YYYY",-1,[DateofSale]) AS Expr1 FROM ProductSales; Subtrai 1 ano aos valores de data no DateofSale campo.
SELECT DateAdd("d",10,[DateofSale]) AS NewDate FROM ProductSales; Soma 10 dias aos valores de data no DateofSale campo e devolve os resultados na NewDate coluna.
SELECT DateAdd("ww",-1,[DateofSale]) AS NewDate FROM ProductSales; Subtrai 1 semana ou 7 dias dos valores de datas no DateofSale campo e devolve os resultados na NewDate coluna.

Exemplo do VBA

Nota

Os exemplos seguintes demonstram a utilização desta função no módulo VBA (Visual Basic for Applications). Para obter mais informações sobre como trabalhar com o VBA, consulte Referência do VBA do Access.

Este exemplo utiliza uma data como entrada e utiliza a DateAdd função para apresentar a data correspondente de 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

Consulte Também

Escolher a função de data correta