VBA DataValue | Com s'utilitza la funció DateValue a Excel VBA?

Què és la funció VBA DateValue?

Una funció DateValue és una funció integrada a Excel VBA dins de la categoria de funció Data / hora. Funciona tant com a funció VBA com a funció de full de càlcul a vba. Aquesta funció retorna el número de sèrie o el valor de Data proporcionat en el format de representació de cadena ignorant la informació de temps proporcionada per la cadena Date. S'utilitza de dues maneres diferents a Excel. Aquesta funció s'utilitza com a fórmula del full de càlcul que s'introdueix en una cel·la del full de treball. S’utilitza com a codi de macro a l’aplicació VBA que l’introdueix a través de Visual Basic Editor associat amb Microsoft Excel.

En aquest article, aprendrem exemples de VBA DATEVALUE i com utilitzar-lo amb una explicació clara.

Explicació de la funció VBA Datevalue

A VBA, DATEVALUE utilitza la sintaxi següent.

Aquesta funció només utilitza l'argument o paràmetre únic

  • Data: És la data representada en format de cadena
  • Devolucions: Aquesta funció retorna el valor de la data en què s'utilitza com a funció VBA. Retorna el valor de la data quan s'utilitza com a funció de full de càlcul

La funció VBA DateValue permet interpretar les dades representades en format de text que s’esmenten en un format Excel vàlid. No pot retornar el valor de la data si la cadena incloïa la representació de text del dia de la setmana.

Els avantatges de la funció VBA DateValue són l'extracció del valor de la data de la cadena i la conversió de la data amb l'hora a l'única data. Podem simplement que quan es dóna una data amb el temps, aquesta funció només valora la data evitant el valor de l'hora.

Com s'utilitza Excel VBA DATEVALUE?

Per utilitzar la funció DateValue a Excel, primer cal obrir l'editor VBA.

Cal col·locar el botó d’ordres al full de càlcul Excel per afegir-hi les línies del programa VBA. Per implementar les línies del programa, l'usuari ha de fer clic al botó d'ordres del full Excel. Per obtenir una sortida vàlida del programa, es dóna una entrada vàlida mitjançant l'argument. Per exemple, el codi següent ajuda a la creació d'una macro per executar la funció DateValue per extreure el valor de la data del text a VBA.

Programa VBA:

 Subbutó Data () Dim myDate As Date myDate = DateValue ("15 d'agost de 1991") MsgBox Data (myDate) Final Sub 

Aquest codi dóna com a resultat la data 15 a partir de l’entrada indicada.

Exemples de DATEVALUE d'Excel VBA

A continuació es mostren els exemples de DateValue a Excel VBA.

Podeu descarregar aquesta plantilla Excel de VBA DateValue aquí - Plantilla Excel de VBA DateValue

Exemple 1: obteniu el dia, el mes i l'any a partir d'una data

Es segueixen pocs passos per crear i executar el programa a VBA. Aquests inclouen

Pas 1: Aneu a la pestanya Desenvolupador, col·loqueu el cursor a una cel·la del full d'Excel i feu clic a l'opció "Insereix" i trieu "Botó d'ordres" a Control ActiveX tal com es mostra a la figura.

Arrossegueu el botó on vulgueu i doneu el títol com a botó de data des de la finestra de propietats.

Pas 2: Feu doble clic al botó que redirigirà al projecte VBA i escriurà el codi entre el botó d'ordre Private Sub i end Sub.

El codi s’ha de desenvolupar de la manera següent per obtenir una data, mes i any.

Codi:

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

En aquest codi, Datebutton1_Click () és el nom i exampledate són variables amb el tipus de dades Date i Msgbox per mostrar la sortida.

Pas 3: Mentre es desenvolupa el codi, es produiran errors de desajustament de tipus vba i se n’ha de fer càrrec.

Pas 4: En aquest pas, executeu el programa fent clic a l'opció d'execució.

O bé podem comprovar o depurar el programa pas a pas seleccionant l'opció Pas a dins del menú Depuració. Si el nostre codi no presenta cap error, mostra la sortida.

Pas 5: Quan s'executa el programa, primer mostra el quadre de missatge amb la data indicada a l'entrada de text. A continuació, feu clic a D'acord per tornar a veure el valor de l'any, feu clic a D'acord al quadre de missatge per veure el valor del mes.

Nota: Aquests passos s'han de seguir clarament per obtenir resultats precisos.

Exemple # 2: fer servir DatePart per obtenir les diferents parts de la data

Pas 1: Aneu a la pestanya Desenvolupador d'Excel, col·loqueu el cursor a una cel·la del full d'Excel i feu clic a l'opció "Insereix" i trieu "Botó d'ordres" a Control ActiveX tal com es mostra a la figura.

Pas 2: Arrossegueu el botó i doneu el títol com DataPart a les propietats.

Feu doble clic sobre aquest botó, es dirigeix ​​al full Visual Basic Editor i es mostra de la següent manera.

Pas 3: Desenvolupeu el codi amb DatePart amb DateValue tal com es mostra a la figura.

Codi:

 Private Sub Datepart1_Click () Dim partdate As Variant partdate = DateValue ("15/08/1991") MsgBox partdate MsgBox Datepart ("aaaa", partdate) MsgBox Datepart ("dd", partdate) MsgBox Datepart ("mm", partdate) MsgBox Data part ("q", data parcial) Fi Sub 

En aquest programa, DatePart1 és el nom de la macro i partDate és el nom de l’argument amb el tipus de dades ‘variant’. Per mostrar l'any, la data, el mes i un trimestre, el format s'aplica com "aaaa", "d", "m" i "q". Si cometem algun error en el format, es mostrarà el següent error.

Pas 4: Després de depurar correctament el programa, executeu-lo fent clic al botó d'execució i utilitzeu la tecla de drecera Excel F5.

El codi primer mostra la data completa i després de fer clic a cada OK a la caixa de missatges, mostra el valor de l'any després d'aquest valor de data, valor mensual i valor quater respectivament.

Coses que cal recordar sobre el DATEVALUE de VBA

Cal recordar les coses següents mentre utilitzeu la funció DateValue a Excel VBA

  • L'error de temps d'execució 13 amb el missatge Tipus de desajustament es mostra quan la data proporcionada a la funció DataValor no es pot convertir en una data vàlida. Necessitem que la data sigui el format de text adequat
  • Quan intentem obtenir l’única data de l’argument de cadena amb el codi ‘msgbox date (nom de l’argument)’, es mostra l’error de desajustament de tipus.
  • Podem veure la sortida de la funció DateValue sense obrir l'editor VBA. Es realitza fent clic al botó d’ordres i seleccionant la macro creada per al programa respectiu
  • Quan s’utilitza DatePart per obtenir els valors, s’ha de seguir el format adequat. En cas contrari, comporta l'error de temps d'execució 5 amb una trucada o argument de procediment no vàlid.