Función DateAdd

Devuelve un valor Variant (Date) que contiene una fecha a la que se ha agregado un intervalo de tiempo especificado.

Sintaxis

DateAdd(intervalo, número, fecha)

La sintaxis de la función DateAdd tiene los siguientes argumentos con nombre:

Parte Descripción
interval Obligatorio. Expresión de cadena que es el intervalo de tiempo que quiere agregar.
number Obligatorio. Expresión numérica, que es el número de intervalos que quiere agregar. Puede ser positiva (para obtener fechas futuras) o negativa (para obtener fechas pasadas).
date Obligatorio. Valor Variant (Date) o literal que representa la fecha a la que se agrega el intervalo.

Configuración

El argumentointerval tiene esta configuración:

Configuración Descripción
yyyy Año
q Trimestre
m Mes
y Día del año
d Día
w Día de la semana
ww Semana
h Hora
n Minuto
s Segundo

Observaciones

Use la función DateAdd para sumar o restar un intervalo de tiempo especificado de una fecha. Por ejemplo, puede usar DateAdd para calcular una fecha 30 días posterior al día actual, o bien para calcular la hora en un plazo de 45 minutos.

Para agregar días a la fecha, puede usar el día del año (“y”), el día (“d”) o el día de la semana (“w”).

Nota:

Cuando usa el intervalo "w" (que incluye todos los días de la semana, de domingo a sábado) para agregar días a la fecha, la función DateAdd agrega el número total de días que especificó en la fecha en lugar de agregar solo el número de días laborables (de lunes a viernes) a la fecha como es posible que esperara.

La función DateAdd no devuelve una fecha inválida. El ejemplo siguiente agrega un mes al 31 de enero:

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

En este caso, DateAdd devuelve “28 de febrero de 95”, no “31 de febrero de 95”. Si la fecha es “31 de enero de 96”, devolverá “29 de febrero de 96” porque 1996 fue año bisiesto.

Se produce un error si la fecha calculada precede al año 100 (es decir, si se restan más años que los que hay en fecha).

Si el número no es un valor Long, se redondea hasta el número entero más próximo antes de evaluarse.

Nota:

El formato del valor devuelto de DateAdd se determina por la configuración del Panel de control, no por el formato que se pasa en el argumento fecha.

Nota:

Para la fecha, si la configuración de la propiedad Calendar está establecida en gregoriano, la fecha proporcionada debe ser gregoriana. Si el calendario es Hijri, la fecha especificada tiene que ser Hijri. Si los valores de meses son nombres, el nombre tiene que coincidir con la configuración de la propiedad Calendar actual. Para reducir la posibilidad de que los nombres de meses entren en conflicto con la configuración de la propiedad Calendar actual, escriba valores numéricos de meses (formato de fecha corta).

Ejemplo

En este ejemplo se selecciona una fecha y se muestra, con la función DateAdd, una fecha correspondiente a un número determinado de meses en el futuro.

Dim FirstDate As Date    ' Declare variables.
Dim IntervalType As String
Dim Number As Integer
Dim Msg As String
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

Vea también

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.