¿Qué es VBA DateSerial?

La función VATES DATESERIAL es una función integrada en Excel. La función DATESERIAL devuelve una fecha dada un valor de año, mes y día. Digamos, por ejemplo, si la fecha de hoy es el 18 de julio de 2019. Algunos usuarios pueden escribirla como 18-Jul'19 o 18-Jul-19. Los formatos para las fechas pueden ser diferentes para múltiples usuarios. Esto nos da la tediosa tarea de trabajar con un mayor número de fechas en diferentes formatos.

Como el enunciado del problema definido anteriormente, el formato de las fechas puede ser diferente para múltiples usuarios. Aquí es donde la función de serie de fecha viene en VBA para ayudar. Es una muy buena función hacer nuestra propia fecha con los valores que elegimos definir. Háganos saber acerca de esta función en detalle. La función DateSerial en VBA es una función de fecha y hora, por lo que el valor devuelto para esta función es DATE. El método para usar la sintaxis para esta función será el siguiente.

Sintaxis de VBA DateSerial

La sintaxis para la función VBA DateSerial en Excel es la siguiente:

Se necesitan tres argumentos año, mes y día.

  • Año: el rango aceptado para esta parte del argumento en la función es de 100-9999. El tipo de datos para el argumento debe ser un número entero.
  • Mes: El rango aceptado para esta parte del argumento en la función es de 1-12. El tipo de datos para el argumento debe ser un número entero.
  • Día: El rango aceptado para esta parte del argumento en la función es de 1-31. El tipo de datos para el argumento debe ser un número entero.

Pero aquí hay una parte genial de esta función. Si proporcionamos el argumento por encima del rango aceptado, la función no devuelve un error, sino que calcula la parte posterior del rango y muestra la fecha. Por ejemplo, si doy entrada como fecha de serie (2019, 14, 02), ahora sabemos que solo puede haber 12 meses en un año, pero he proporcionado 14 como argumento. La función no devolverá un error, sino que agregará los dos meses adicionales en el año actual, por lo que la salida será 2020-02-02.

¿Cómo usar la función VBA DateSerial en Excel?

Aprenderemos cómo usar una función VBA DateSerial con algunos ejemplos en Excel.

Puede descargar esta plantilla Excel de VBA DateSerial aquí - Plantilla VBA DateSerial Excel

Probemos esta función con algunos ejemplos que nos aclararán las cosas.

Ejemplo # 1 - VBA DateSerial

Primero, proporcionemos una fecha simple a una variable usando la función de serie de fecha y veamos el resultado que obtenemos.

Paso 1: Antes de comenzar con nuestros ejemplos, primero asegúrese de tener habilitada la pestaña del desarrollador y luego vaya a la sección de código para abrir el Editor VB haciendo clic en Visual Basic tal como se muestra en la imagen a continuación.

Paso 2: desde la ventana que se muestra arriba, haga clic en la pestaña Insertar para insertar un módulo. Trabajaremos en el mismo módulo para todos nuestros ejemplos.

Paso 3: Inicie un subprocedimiento de la siguiente manera y declare una variable como tipo de datos de fecha.

Código:

 Submuestra () Dim Dt As Date End Sub 

Paso 4: Ahora proporcionemos una fecha para la variable usando la función serial de fecha.

Código:

 Submuestra () Dim Dt As Date Dt = DateSerial (2019, 7, 2) End Sub 

Paso 5: Muestra el valor almacenado en nuestra variable usando la función msgbox.

Código:

 Submuestra () Dim Dt As Date Dt = DateSerial (2019, 7, 2) MsgBox Dt End Sub 

Paso 6: cuando ejecutamos el código anterior, obtenemos el siguiente resultado.

Ejemplo # 2 - VBA DateSerial

Ahora examinemos la teoría que discutimos anteriormente en la introducción de que si proporcionamos los valores aparte del rango aceptado y la función calcula la fecha para nosotros.

Paso 1: en el mismo módulo, inicie otro subprocedimiento de la siguiente manera.

Código:

 Sub Sample1 () End Sub 

Paso 2: Ahora defina una variable con el tipo de datos de fecha.

Código:

 Sub Sample1 () Dim Dt As Date End Sub 

Paso 3: proporcionemos la entrada a la variable DT utilizando la función de serie de fecha como se muestra a continuación.

Código:

 Submuestra1 () Dim Dt As Date Dt = DateSerial (2019, 14, 2) End Sub 

Paso 4: Muestra el valor almacenado en la variable Dt usando la función msgbox.

Código:

 Sub Sample1 () Dim Dt As Date Dt = DateSerial (2019, 14, 2) MsgBox Dt End Sub 

Paso 5: Ahora ejecute el código anterior y vea el resultado a continuación de la siguiente manera.

Podemos ver que el año ha cambiado, ya que habíamos proporcionado dos meses adicionales para los argumentos. Básicamente, esta función agregó 14 meses al año 2019, lo que nos dio el segundo mes de 2020 y la fecha.

Ejemplo # 3 - VBA DateSerial

En los ejemplos anteriores, proporcionamos los argumentos en forma de fecha general. Pero discutimos cómo los usuarios pueden ingresar valores absurdos en la sección de fecha como formato, ya que escribir fechas es diferente de un individuo a otro. Compararemos dos formatos de fecha usando la función de serie de fecha en este ejemplo.

Paso 1: en el mismo módulo, defina otro subproceso de la siguiente manera para el tercer ejemplo.

Código:

 Sub Sample2 () End Sub 

Paso 2: en este escenario, defina dos variables como fechas como se muestra a continuación.

Código:

 Sub Sample2 () Dim Dt1, Dt2 As Date End Sub 

Paso 3: Ahora, en la primera variable, proporcionemos la fecha de manera simple y regular utilizando la función de fechas.

Código:

 Sub Sample2 () Dim Dt1, Dt2 As Date Dt1 = DateSerial (2019, 12, 31) End Sub 

Paso 4: Ahora, para la segunda variable, proporcionemos la fecha de manera irregular utilizando la función de fechas como se muestra a continuación.

Código:

 Sub Sample2 () Dim Dt1, Dt2 As Date Dt1 = DateSerial (2019, 12, 31) Dt2 = DateSerial (19, 12, 31) End Sub 

Paso 5: Ahora imprima ambos valores usando la función msgbox.

Código:

 Sub Sample2 () Dim Dt1, Dt2 As Date Dt1 = DateSerial (2019, 12, 31) Dt2 = DateSerial (19, 12, 31) MsgBox Dt1 & "" & Dt2 End Sub 

Paso 6: Ejecute el código anterior para encontrar el siguiente resultado que se muestra a continuación.

Podemos ver que ambas fechas son iguales. El año 19 de dos dígitos se interpreta como 2019.

Cosas para recordar

  • Es una función de fecha y hora, por lo que la salida está en Fecha.
  • Si el valor proporcionado a la función está por encima del rango aceptado de la función, automáticamente calcula la fecha en lugar de dar un error.
  • Si los valores proporcionados a los argumentos son mayores que el valor que puede contener un entero, entonces la función devuelve un error.

Artículos recomendados

Esta es una guía de VBA DateSerial. Aquí discutimos cómo usar Excel VBA DateSerial Function junto con ejemplos prácticos y una plantilla de Excel descargable. También puede consultar nuestros otros artículos sugeridos:

  1. VBA InStr explicado con ejemplos
  2. Tipo de datos enteros de VBA
  3. VBA ISNULL explicado con ejemplos
  4. Formato de fecha de VBA (ejemplos)

Categoría: