VBA DateAdd - Sumar y restar fechas usando la función Dateadd

Tabla de contenido

Función Excel VBA DateAdd

La función DateAdd está categorizada bajo la función de fecha y hora en VBA y esta función tiene un valor de salida como una fecha, toma la entrada como un formato de fecha y la agrega a la fecha actual para devolver una nueva fecha, la sintaxis de esta función toma intervalo de tres argumentos, el número y la fecha.

Usando la función DateAdd, podemos sumar y restar días, meses y años de la fecha dada. Date in excel es parte integrante de nuestro trabajo diario; no podemos trabajar en Excel sin fecha, hora y otras cosas importantes. Agregar una fecha a otra, restar una fecha de otra, es el proceso común. En la hoja de trabajo normal, simplemente hacemos operaciones aritméticas y obtenemos el resultado. En VBA, tenemos la función llamada DateAdd, que hará el trabajo.

Sintaxis

Intervalo: El intervalo no es más que el tipo de valor que desea sumar o restar. Por ejemplo, si quiere sumar o restar un mes, si quiere sumar o restar días, si quiere sumar o restar un año, si quiere sumar o restar un trimestre, etc.…

A continuación se muestra una lista de códigos y descripciones.

  • Número: el número de meses, días o semanas (como se indica en el intervalo) que queremos sumar o restar a la fecha.
  • Fecha: El valor de la fecha real que estamos haciendo la operación aritmética.

Por ejemplo, si tiene la fecha "14-Mar-2019" y desea agregar dos días a la fecha, use el siguiente código:

DateAdd ("d", 2, "14-03-2019")

El resultado del código anterior es: 16-03-2019

¿Cómo usar la función Dateadd en VBA?

Ejemplo n. ° 1 - Agregar fecha

Para iniciar el procedimiento, apliquemos la función DateAdd simple. Suponga que está trabajando con la fecha "14-03-2019".

Paso 1: Inicie el subprocedimiento creando un nombre de macro.

Paso 2: Defina la variable como Fecha.

Código:

Sub DateAdd_Example1 () Dim Mes como fecha Fin Sub

Paso 3: Para esta variable, asigne un valor.

Código:

Sub DateAdd_Example1 () Dim NewDate As Date NewDate = End Sub

Paso 4: Inicie la fórmula DateAdd .

Código:

Sub DateAdd_Example1 () Dim NewDate As Date NewDate = DateAdd (End Sub

Paso 5: ¿Cuál es la operación que queremos hacer? Queremos un día para la fecha. Entonces el intervalo es " d".

Código:

Sub DateAdd_Example1 () Dim NewDate As Date NewDate = DateAdd ("d", End Sub

Paso 6: ¿Cuántos días necesitamos agregar? Tengo que agregar 5 días.

Código:

Sub DateAdd_Example1 () Dim NewDate As Date NewDate = DateAdd ("d", 5, End Sub

Paso 7: Nuestra fecha es “ 14-03-2019. "

Código:

Sub DateAdd_Example1 () Dim NewDate As Date NewDate = DateAdd ("d", 5, "14-03-2019") End Sub

Paso 8: muestra el resultado de la variable en el cuadro de mensaje de VBA.

Código:

Sub DateAdd_Example1 () Dim NewDate As Date NewDate = DateAdd ("d", 5, "14-03-2019") MsgBox NewDate End Sub

Si ejecuto este código, debería obtener la fecha como 19-03-2019.

En mi sistema, el formato de fecha es "mm-dd-aaaa", por lo que el resultado se muestra según la configuración de la fecha del sistema.

Sin embargo, podemos modificar esto aplicando la función VBA FORMAT.

Código:

Sub DateAdd_Example1 () Dim NewDate As Date NewDate = DateAdd ("d", 5, "14-03-2019") Formato de MsgBox (NewDate, "dd-mmm-aaaa") End Sub

Ahora el resultado debería ser así " 19-Mar-2019 ".

Ejemplo n. ° 2: agregar meses

Para agregar meses, a continuación se muestra el código

Código:

Sub DateAdd_Example2() 'To add months Dim NewDate As Date NewDate = DateAdd("m", 5, "14-03-2019") MsgBox Format(NewDate, "dd-mmm-yyyy") End Sub

The result will be:

Example #3 - Add Years

To add years using DateAdd, use the below code.

Code:

Sub DateAdd_Example2() 'To add year Dim NewDate As Date NewDate = DateAdd("yyyy", 5, "14-03-2019") MsgBox Format(NewDate, "dd-mmm-yyyy") End Sub

The Result will be:

Example #4 - Add Quarter

To add quarter below is the code.

Code:

Sub DateAdd_Example2() 'To add quarter Dim NewDate As Date NewDate = DateAdd("Q", 5, "14-03-2019") MsgBox Format(NewDate, "dd-mmm-yyyy") End Sub

The Result will be:

Example #5 - Add Weekday

To add weekdays below is the code.

Code:

Sub DateAdd_Example2() 'To add weekdays Dim NewDate As Date NewDate = DateAdd("W", 5, "14-03-2019") MsgBox Format(NewDate, "dd-mmm-yyyy") End Sub

The Result will be:

Example #6 - Add Week

To add week below is the code.

Code:

Sub DateAdd_Example2() 'To add Week Dim NewDate As Date NewDate = DateAdd("WW", 5, "14-03-2019") MsgBox Format(NewDate, "dd-mmm-yyyy") End Sub

The Result will be:

Example #7 - Add Hour

To add the hour below is the code.

Code:

Sub DateAdd_Example2() 'To add hour Dim NewDate As Date NewDate = DateAdd("h", 5, "14-03-2019") MsgBox Format(NewDate, "dd-mmm-yyyy hh:mm:ss") End Sub

The Result will be

Example #8 - Subtract Date

In order to add, we have supplied positive numbers; to subtract, and we need to supply negative numbers that are all.

Para restar 3 meses de la fecha proporcionada, a continuación se muestra el código.

Código:

Sub DateAdd_Example3 () 'Para agregar la hora Dim NewDate As Date NewDate = DateAdd ("m", -3, "14-03-2019") Formato de MsgBox (NewDate, "dd-mmm-aaaa") End Sub

El resultado de este código es:

Deduzco 3 meses desde la fecha 14 º de marzo de 2019. Se volverá a la del año anterior.

Articulos interesantes...