VBA DateValue | Cum se utilizează funcția DateValue în Excel VBA?

Ce este funcția VBA DateValue?

O funcție DateValue este o funcție încorporată în Excel VBA sub categoria funcției Data / oră. Funcționează atât ca funcție VBA, cât și ca funcție de foaie de lucru în vba. Această funcție returnează numărul de serie sau valoarea Datei furnizate în formatul reprezentării șirului, ignorând informațiile de timp furnizate de șirul Date. Este utilizat în două moduri diferite în Excel. Această funcție este utilizată ca formulă de foaie de lucru care intră într-o celulă de foaie de lucru. Este folosit ca cod macro în aplicația VBA care îl introduce prin Visual Basic Editor asociat cu Microsoft Excel.

În acest articol, vom învăța exemple de VBA DATEVALUE și cum să-l folosim cu explicații clare.

Explicația funcției VBA Datevalue

În VBA, DATEVALUE utilizează următoarea sintaxă.

Această funcție folosește numai Argumentul sau Parametrul unic

  • Data : este data reprezentată în format șir
  • Returnează: Această funcție returnează valoarea datei când este utilizată ca funcție VBA. Returnează valoarea datei când este utilizată ca funcție de foaie de lucru

Funcția VBA DateValue este capabilă să interpreteze datele reprezentate în format text menționate într-un format Excel valid. Nu poate returna valoarea datei dacă șirul a inclus reprezentarea text a zilei săptămânii.

Avantajele funcției VBA DateValue sunt extragerea valorii datei din șir și conversia datei cu ora la singura dată. Putem pur și simplu că, atunci când o dată este dată cu timpul, această funcție doar valoarea datei evitând valoarea timpului.

Cum se folosește Excel VBA DATEVALUE?

Pentru a utiliza funcția DateValue în Excel trebuie mai întâi să deschideți editorul VBA.

Butonul de comandă trebuie plasat în foaia de lucru Excel pentru a adăuga liniile programului VBA la acesta. Pentru a implementa liniile programului, utilizatorul trebuie să facă clic pe butonul de comandă din foaia Excel. Pentru a avea o ieșire validă din program, intrarea validă este dată prin argument. De exemplu, următorul cod ajută la crearea unei macrocomenzi pentru a rula funcția DateValue pentru a extrage valoarea datei din textul din VBA.

Programul VBA: 

 Buton Sub Date () Dim MyDate Ca Data myDate = DateValue („15 august 1991”) MsgBox Date (myDate) End Sub 

Acest cod are ca rezultat data la 15 din intrarea dată.

Exemple de Excel VBA DATEVALUE

Mai jos sunt exemple de DateValue în Excel VBA.

Puteți descărca acest șablon Excel VBA DateValue aici - Șablon Excel VBA DateValue

Exemplul nr. 1 - Obțineți ziua, luna și anul de la o dată

Câțiva pași sunt urmați pentru a crea și executa programul în VBA. Acestea includ

Pasul 1: Accesați fila Dezvoltator, plasați cursorul pe o celulă din foaia Excel și faceți clic pe opțiunea „Inserați” și alegeți „Buton de comandă” sub Control ActiveX așa cum se arată în figură.

Trageți butonul unde doriți și dați legenda ca buton de dată din fereastra de proprietăți.

Pasul 2: Faceți dublu clic pe butonul pe care îl va redirecționa către proiectul VBA și scrie codul între butonul de comandă Private Sub și end sub.

Codul trebuie dezvoltat după cum urmează pentru a obține o dată, o lună și un an.

Cod:

 Private Sub Datebutton1_Click () Dim Exampledate Ca dată Exampledate = DateValue ("19 aprilie 2019") MsgBox Data MsgBox Anul (Exampledate) MsgBox Luna (Exampledate) Sfârșitul sub 

În acest cod, Datebutton1_Click () este numele și exampledate sunt variabile cu tipul de date Date și Msgbox pentru a afișa ieșirea.

Pasul 3: În timpul dezvoltării codului, vor apărea erori de nepotrivire de tip vba și trebuie să aibă grijă de ele.

Pasul 4: În acest pas, rulați programul făcând clic pe opțiunea Executare.

Sau putem verifica sau depana programul pas cu pas selectând opțiunea Step Into din meniul Debug. Dacă codul nostru este fără erori, acesta afișează rezultatul.

Pasul 5 : Când programul este executat, acesta afișează mai întâi caseta de mesaj cu data dată în introducerea textului. Apoi, faceți clic pe OK pentru a vedea din nou valoarea anului, faceți clic pe OK pe caseta de mesaj pentru a vedea valoarea lunii.

Notă: acești pași trebuie urmați în mod clar pentru a avea rezultate exacte.

Exemplul # 2 - Utilizarea DatePart pentru a obține diferitele părți ale datei

Pasul 1: Accesați fila Dezvoltator Excel, plasați cursorul pe o celulă din foaia Excel și faceți clic pe opțiunea „Inserați” și alegeți „Buton de comandă” sub Control ActiveX așa cum se arată în figură.

Pasul 2: Trageți butonul și dați legenda ca DatePart sub proprietăți.

Faceți dublu clic pe acest buton, se direcționează către foaia Editorului Visual Basic și se afișează după cum urmează.

Pasul 3: Dezvoltați codul folosind DatePart cu DateValue așa cum se arată în figură.

Cod:

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

În acest program, DatePart1 este numele macro și partDate este numele argumentului cu tipul de date „variantă”. Pentru afișarea anului, a datei, a lunii și a unui sfert, formatul este aplicat ca „aaaa”, „d”, „m” și „q”. Dacă facem vreo greșeală în format, se afișează următoarea eroare.

Pasul 4: După depanarea cu succes a programului, rulați programul făcând clic pe butonul Rulare, utilizând tasta de comandă rapidă excel F5.

Codul afișează mai întâi data completă, apoi după ce faceți clic pe fiecare OK din msgbox, afișează valoarea anului după acea valoare Data, Valoarea lunii, respectiv valoarea Quater.

Lucruri de reținut despre VBA DATEVALUE

Următoarele lucruri trebuie reținute în timp ce utilizați funcția DateValue în Excel VBA

  • Eroarea timpului de rulare 13 cu mesajul Mismatch Type este afișată atunci când data furnizată funcției DateValue nu poate fi convertită într-o dată validă. Avem nevoie de un format text adecvat pentru dată
  • Când încercăm să obținem singura dată din argumentul șir cu codul „dată msgbox (numele argumentului)”, acesta afișează eroarea de nepotrivire de tip.
  • Putem vedea ieșirea funcției DateValue fără a deschide editorul VBA. Se face făcând clic pe butonul de comandă și selectând macro-ul creat pentru programul respectiv
  • 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.