Función DateAddDateAdd function

Devuelve un valor Variant (Date) que contiene una fecha a la que se ha agregado un intervalo de tiempo especificado.Returns a Variant (Date) containing a date to which a specified time interval has been added.

SintaxisSyntax

DateAdd(intervalo, número, fecha)DateAdd(interval, number, date)

La sintaxis de la función DateAdd tiene los siguientes argumentos con nombre:The DateAdd function syntax has these named arguments:

PartePart DescripciónDescription
intervalinterval Obligatorio.Required. Expresión de cadena que es el intervalo de tiempo que quiere agregar.String expression that is the interval of time you want to add.
numbernumber Obligatorio.Required. Expresión numérica, que es el número de intervalos que quiere agregar.Numeric expression that is the number of intervals you want to add. Puede ser positiva (para obtener fechas futuras) o negativa (para obtener fechas pasadas).It can be positive (to get dates in the future) or negative (to get dates in the past).
datedate Obligatorio.Required. Valor Variant (Date) o literal que representa la fecha a la que se agrega el intervalo.Variant (Date) or literal representing the date to which the interval is added.

ConfiguraciónSettings

El argumento intervalo tiene los siguientes valores:The interval argument has these settings:


ConfiguraciónSetting DescripciónDescription
yyyyyyyy AñoYear
qq TrimestreQuarter
mm MesMonth
yy Día del añoDay of year
dd DíaDay
ww Día de la semanaWeekday
wwww SemanaWeek
hh HoraHour
nn MinutoMinute
ss SegundoSecond

ObservacionesRemarks

Puede usar la función DateAdd para sumar o restar un intervalo de tiempo especificado de una fecha.You can use the DateAdd function to add or subtract a specified time interval from a date. 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.For example, you can use DateAdd to calculate a date 30 days from today or a time 45 minutes from now.

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”).To add days to date, you can use Day of Year ("y"), Day ("d"), or Weekday ("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.When you use the "w" interval (which includes all the days of the week, Sunday through Saturday) to add days to a date, the DateAdd function adds the total number of days that you specified to the date, instead of adding just the number of workdays (Monday through Friday) to the date, as you might expect.

La función DateAdd no devuelve una fecha inválida.The DateAdd function won't return an invalid date. El ejemplo siguiente agrega un mes al 31 de enero:The following example adds one month to January 31:

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

En este caso, DateAdd devuelve “28 de febrero de 95”, no “31 de febrero de 95”.In this case, DateAdd returns 28-Feb-95, not 31-Feb-95. Si la fecha es “31 de enero de 96”, devolverá “29 de febrero de 96” porque 1996 fue año bisiesto.If date is 31-Jan-96, it returns 29-Feb-96 because 1996 is a leap year.

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).If the calculated date would precede the year 100 (that is, you subtract more years than are in date), an error occurs.

Si el número no es un valor Long, se redondea hasta el número entero más próximo antes de evaluarse.If number isn't a Long value, it is rounded to the nearest whole number before being evaluated.

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.The format of the return value for DateAdd is determined by Control Panel settings, not by the format that is passed in the date argument.

Nota

Para la fecha, si la configuración de la propiedad Calendar está establecida en gregoriano, la fecha proporcionada debe ser gregoriana.For date, if the Calendar property setting is Gregorian, the supplied date must be Gregorian. Si el calendario es Hijri, la fecha especificada tiene que ser Hijri.If the calendar is Hijri, the supplied date must be Hijri. Si los valores de meses son nombres, el nombre tiene que coincidir con la configuración de la propiedad Calendar actual.If month values are names, the name must be consistent with the current Calendar property setting. 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).To minimize the possibility of month names conflicting with the current Calendar property setting, enter numeric month values (Short Date format).

EjemploExample

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.This example takes a date and, using the DateAdd function, displays a corresponding date a specified number of months in the future.

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énSee also

Soporte técnico y comentariosSupport and feedback

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación?Have questions or feedback about Office VBA or this documentation? 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.Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.