VBA DATEVALUE

¿Qué es la función VBA DateValue?

Una función DateValue es una función incorporada en Excel VBA en la categoría de función Fecha / hora. Funciona como función de VBA y como función de hoja de trabajo en vba. Esta función devuelve el número de serie o el valor de la fecha proporcionado en el formato de representación de cadena ignorando la información de la hora proporcionada por la cadena de fecha. Se usa de dos formas diferentes en Excel. Esta función se usa como una fórmula de hoja de trabajo que ingresa en una celda de la hoja de trabajo. Se utiliza como código de macro en la aplicación VBA ingresándolo a través del Editor de Visual Basic asociado con Microsoft Excel.

En este artículo, aprenderemos ejemplos de VBA DATEVALUE y cómo usarlo con una explicación clara.

Explicación de la función de valor de fecha de VBA

En VBA, DATEVALUE usa la siguiente sintaxis.

Esta función usa solo el argumento o parámetro único

  • Fecha : es la fecha representada en formato de cadena
  • Devoluciones: esta función devuelve el valor de la fecha cuando se usa como función de VBA. Devuelve el valor de la fecha cuando se usa como una función de hoja de trabajo

La función VBA DateValue es capaz de interpretar los datos representados en formato de texto que se menciona en un formato válido de Excel. No puede devolver el valor de la fecha si la cadena incluye la representación de texto del día de la semana.

Los beneficios de la función VBA DateValue son extraer el valor de la fecha de la cadena y convertir la fecha con la hora en la única fecha. Podemos simplemente que cuando se da una fecha con el tiempo, esta función solo el valor de la fecha evitando el valor del tiempo.

¿Cómo utilizar Excel VBA DATEVALUE?

Para usar la función DateValue en Excel, primero debe abrir el editor de VBA.

El botón de comando debe colocarse en la hoja de cálculo de Excel para agregarle las líneas del programa VBA. Para implementar las líneas del programa, el usuario debe hacer clic en el botón de comando en la hoja de Excel. Para tener una salida válida del programa, se proporciona una entrada válida a través del argumento. Por ejemplo, el siguiente código ayuda a la creación de una macro para ejecutar la función DateValue para extraer el valor de la fecha del texto en VBA.

Programa de VBA: 

 Sub Datebutton () Dim myDate As Date myDate = DateValue ("15 de agosto de 1991") MsgBox Date (myDate) End Sub 

Este código da como resultado la fecha 15 de la entrada dada.

Ejemplos de Excel VBA DATEVALUE

A continuación se muestran los ejemplos de DateValue en Excel VBA.

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

Ejemplo n. ° 1: obtener día, mes y año a partir de una fecha

Se siguen algunos pasos para crear y ejecutar el programa en VBA. Aquellos incluyen

Paso 1: Vaya a la pestaña Desarrollador, coloque el cursor en una celda en la hoja de Excel y haga clic en la opción 'Insertar' y elija 'Botón de comando' en Control ActiveX como se muestra en la figura.

Arrastre el Botón donde desee y dé el título como Botón Fecha desde la ventana de propiedades.

Paso 2: Haga doble clic en el botón que lo redireccionará al proyecto VBA y escribirá el código entre el botón de comando Private Sub y el sub final.

El código debe desarrollarse como se muestra a continuación para obtener una fecha, mes y año.

Código:

 Private Sub Datebutton1_Click () Dim Exampledate As Date Exampledate = DateValue ("19 de abril de 2019") MsgBox Date MsgBox Year (Exampledate) MsgBox Month (Exampledate) End Sub 

En este código, Datebutton1_Click () es el nombre y exampledate son variables con el tipo de datos Date y Msgbox para mostrar la salida.

Paso 3: mientras se desarrolla el código, se producirán errores de desajuste de tipo vba y es necesario solucionarlos.

Paso 4: En este paso, ejecuta el programa haciendo clic en la opción Ejecutar.

O podemos verificar o depurar el programa paso a paso seleccionando la opción Paso a paso en el menú Depurar. Si nuestro código no tiene errores, muestra el resultado.

Paso 5 : Cuando se ejecuta el programa, primero muestra el cuadro de mensaje con la fecha indicada en la entrada de texto. A continuación, haga clic en Aceptar para ver el valor del año nuevamente, haga clic en Aceptar en el cuadro de mensaje para ver el valor del mes.

Nota: Estos pasos deben seguirse claramente para obtener resultados precisos.

Ejemplo n. ° 2: uso de DatePart para obtener las diferentes partes de la fecha

Paso 1: Vaya a la pestaña Desarrollador de Excel, coloque el cursor en una celda de la hoja de Excel y haga clic en la opción 'Insertar' y elija 'Botón de comando' en Control ActiveX como se muestra en la figura.

Paso 2: Arrastre el botón y escriba el título como DatePart en las propiedades.

Haga doble clic en este botón, lo dirige a la hoja del Editor de Visual Basic y se muestra de la siguiente manera.

Paso 3: Desarrolle el código usando DatePart con DateValue como se muestra en la figura.

Código:

 Private Sub Datepart1_Click () Dim partdate As Variant partdate = DateValue ("15/8/1991") MsgBox partdate MsgBox Datepart ("aaaa", partdate) MsgBox Datepart ("dd", partdate) MsgBox Datepart ("mm", partdate) MsgBox Datepart ("q", partdate) End Sub 

En este programa, DatePart1 es el nombre de la macro y partDate es el nombre del argumento con el tipo de datos 'variante'. Para mostrar el año, la fecha, el mes y el trimestre, el formato se aplica como "aaaa", "d", "m" y "q". Si cometemos algún error en el formato nos muestra el siguiente error.

Paso 4: Después de la depuración exitosa del programa, ejecute el programa haciendo clic en el botón Ejecutar, use la tecla de acceso directo de Excel F5.

El código primero muestra la fecha completa y luego, después de hacer clic en cada Aceptar en el cuadro de mensaje, muestra el valor del año después de ese valor de Fecha, Valor de mes, Valor de cuarto respectivamente.

Cosas para recordar sobre el VBA DATEVALUE

Se deben recordar las siguientes cosas al usar la función DateValue en Excel VBA

  • El error de tiempo de ejecución 13 con el mensaje Type Mismatch se muestra cuando la fecha proporcionada a la función DateValue no se puede convertir en una fecha válida. Necesitamos que la fecha tenga el formato de texto adecuado
  • Cuando intentamos obtener la única fecha del argumento de cadena con el código 'msgbox date (nombre del argumento)', muestra el error de no coincidencia de tipos.
  • Podemos ver la salida de la función DateValue sin abrir el editor de VBA. Se hace haciendo clic en el botón de comando y seleccione la macro creada para el programa respectivo
  • When DatePart is used to get the values, the appropriate format should be followed. Otherwise, it leads ‘run time error 5’ with message invalid procedure call or argument.