Data VBA Excel

Există unele funcții care sunt foarte utile și ne sufocăm viața fără ca aceste funcții să fie un utilizator VBA. Funcția DATE este una dintre acele funcții care poate fi foarte utilă uneori și poate face viața mai ușoară pentru un programator. Într-o foaie de calcul Excel, există o funcție numită TODAY () care oferă data curentă ca rezultat pe baza datei sistemului. Pe linii similare, VBA are funcția DATE, care oferă data curentă pe baza datei sistemului.

Funcția VBA DATE returnează data curentă bazată pe data sistemului ca rezultat și are o sintaxă foarte simplă.

Această funcție nu are niciun argument care să fie transmis vine cu numele funcției și paranteze goale. Nu este obligatorie să adăugați și paranteze în timp ce apelați această funcție. Nu este această funcție cu adevărat simplă în natură?

Sintaxa funcției DATE în VBA.

Cum se utilizează funcția de date Excel VBA?

Vom învăța cum să utilizăm o funcție VBA Date cu câteva exemple în excel.

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

Funcția VBA Data - Exemplul # 1

Să presupunem că ați dorit să vedeți data curentă în MsgBox. Cum poți face asta? Urmați pașii de mai jos și veți trece.

Pasul 1: Introduceți un nou modul în editorul dvs. de bază Visual.

Pasul 2: Definiți o sub-procedură pentru a scrie crea și salva o macrocomandă.

Cod:

 Sub DataEx1 () Încheiere Sub 

Pasul 3: Definiți o variabilă numită CurrDate care poate reține valoarea datei curente. Întrucât, suntem pe cale să atribuim o valoare datei variabilei, asigurați-vă că o definiți ca dată.

Cod:

 Sub DateEx1 () Dim CurrDate Ca data de încheiere Sub 

Pasul 4: Utilizând operatorul de alocare, alocați o valoare a datei curente a sistemului variabilei nou create. Trebuie doar să adăugați DATE pentru a atribui valoarea datei. Utilizați următorul cod de cod:

Cod:

 Sub DateEx1 () Dim CurrDate Ca Data CurrDate = Data Sfarsire Sub 

Pasul 5: Utilizați MsgBox pentru a putea vedea data actuală a sistemului în promptul Casetă mesaje. Folosiți linia de cod dată mai jos:

Cod:

 Sub DateEx1 () Dim CurrDate Ca Data CurrDate = Data MsgBox "Data de astăzi este:" & CurrDate End Sub 

Pasul 6: Apăsați F5 sau executați butonul manual pentru a rula acest cod. Veți putea vedea o casetă de mesaje așa cum se arată în imaginea de mai jos cu data curentă.

Rețineți că, data afișată aici în ecranul de ecran este data la care am executat acest script. Este posibil să primiți o dată diferită la data când rulați acest cod, pe baza datei sistemului.

Acesta este cel mai simplu exemplu de obținere a datei curente. De asemenea, puteți utiliza funcția Cells.Value pentru a obține valoarea datei într-o anumită celulă a foii dvs. Excel.

Funcția VBA Data - Exemplul # 2

Data scadenței plății EMI pentru împrumuturi la domiciliu

Să presupunem că am o foaie de lucru și am nevoie de un sistem care să-mi arate un mesaj „ Hei! Trebuie să vă plătiți EMI astăzi. ”De fiecare dată când îmi deschid foaia și valoarea din celula A1 este data curentă a sistemului. Să vedem pas cu pas cum putem face asta.

Pasul 1: Introduceți un nou modul și definiți o nouă sub-procedură numită auto_open () pentru a crea o macrocomandă. auto_open () permite macro-ului dvs. să ruleze automat de fiecare dată când deschideți foaia de lucru.

Cod:

 Sub auto_open () End Sub 

Pasul 2: Utilizați condiția If pentru a atribui valoarea datei curente în celula A1 a foii de lucru HomeLoan_EMI.

Cod:

 Sub auto_open () Dacă foi ("AcasăLoan_EMI"). Gama ("A1"). Valoare = Data sfârșit Sub 

Pasul 3: Acum, utilizați Apoi pe aceeași linie după IF, astfel încât să putem adăuga o instrucțiune care se va executa atât timp cât dacă condiția este adevărată.

Cod:

 Sub auto_open () Dacă foi ("AcasăLoan_EMI"). Gama ("A1"). Valoare = Data Atunci se încheie Sub 

Pasul 4: Adăugați o instrucțiune care trebuie executată pentru condiția care este adevărată.

Cod:

 Sub auto_open () Dacă foi ("HomeLoan_EMI"). Gama ("A1"). Valoare = Data Atunci MsgBox ("Hei! Trebuie să plătiți EMI astăzi.") 

Această declarație va apărea sub Caseta de mesaje de îndată ce condiția If este adevărată.

Pasul 5: După cum știm, fiecare condiție IF avea întotdeauna nevoie de o condiție de altă natură. Adăugați o altă condiție la această buclă.

Cod:

 Sub auto_open () Dacă foi ("HomeLoan_EMI"). Gama ("A1"). Valoare = Data Atunci MsgBox ("Hei! Trebuie să plătiți EMI-ul dvs. astăzi.") Începutul Ieșește Sub End Sub 

Această altă condiție va încheia deschiderea automată a Macro dacă o dată în celula A1 nu este data curentă a sistemului.

Pasul 6: În sfârșit, încheiați bucla IF folosind instrucțiunea End IF.

Cod:

 Sub auto_open () Dacă foi ("HomeLoan_EMI"). Gama ("A1"). Valoare = Data Atunci MsgBox ("Hei! Trebuie să plătiți EMI-ul dvs. astăzi.") Încă Ieșire Sub End If End End Sub 

Pasul 7: Acesta este, de fiecare dată când deschideți foaia de lucru, sistemul va rula automat codul de mai sus și va vedea dacă valoarea datei din celula A1 este data de scadență a EMI sau nu. Dacă data de scadență a IME este egală cu data sistemului, acesta va afișa mesajul ca mai jos:

Funcția date VBA - Exemplul # 3

Data VBA pentru a afla beneficiarul de pe cardul de credit

Să presupunem că am o listă de clienți care au un card de credit și doriți să știți cine are plățile datorate astăzi. În așa fel încât să îi puteți apela și să le cereți să plătească datoria imediat de către EOD.

VBA Data ar putea fi util pentru a vă permite să automatizați lucrurile în loc să verificați datele una câte una. Să vedem cum se face pas cu pas:

Pasul 1: Definiți o macrocomandă nouă folosind o sub-procedură în cadrul unui modul.

Cod:

 Sub DataEx3 () Încheiere Sub 

Pasul 2: Definiți două variabile noi, dintre care una va fi utilă în buclarea codului și alta pentru a păstra valoarea datei sistemului curente.

Cod:

 Sub DateEx3 () Dim DateDue Ca Data Dim i As Long DateDue = Data i = 2 End Sub 

Pasul 3: Acum folosiți următorul cod care vă ajută în căutarea persoanei care are data de scadență a facturii cardului de credit ca dată curentă a sistemului. Acest cod permite verificarea Clientului care are plata plății datorate la data curentă a sistemului, împreună cu suma facturii.

Cod:

 Sub DateEx3 () Dim DateDue As Data Dim i As Long DateDue = Data i = 2 For i = 2 To Sheets ("CC_Bill"). Cells (Rows.Count, 1) .End (xlUp) .Row If DateDue = DateSerial ( Anul (DataDue), Luna (Fișele ("CC_Bill"). Celulele (i, 3). Valoarea), Ziua (Fișele ("CC_Bill"). Celulele (i, 3). Valoarea)) Apoi, MsgBox "Numele clientului:" & Foi ("CC_Bill"). Celule (i, 1). Valor & vbNewLine & "Suma Premium:" & Foi ("CC_Bill"). Celule (i, 2). Valoarea finală dacă urmează i se încheie Sub 

Pasul 4: Rulați acest cod apăsând manual butonul F5 sau Run și vedeți ieșirea.

La prima iterație, putem observa că Mohan este cel care are o factură de 12.900 scadentă la 29 aprilie 2019 (data actuală a sistemului la care este executat acest cod). Dacă lovim OK, putem vedea următorul nume de client care are o factură scadentă la 29 aprilie 2019 (Rajani este următorul).

Acest cod va fi cu adevărat util atunci când aveți milioane de rânduri de clienți care au factura datorată într-o anumită zi. Vă rugăm să rețineți că toate scripturile menționate în acest articol sunt rulate pe 29 aprilie 2019. Puteți obține o valoare diferită a datei atunci când rulați aceste exemple de coduri pe baza datei de sistem.

Lucruri de amintit

  • Funcția VBA DATE returnează data curentă a sistemului și în paralel cu funcția Excel (TODAY).
  • Funcția VBA DATE nu are niciun argument care să fie transmis în excel. Nici măcar nu este nevoie de paranteze pentru a fi apelat în timpul utilizării acestei funcții în cod.
  • VBA DATE este o funcție non-volatilă în excel.
  • VBA stochează Valorile date ca DATA la momentul executării. Deci, nu definește o valoare de reținere variabilă ca String / Integer. Va cauza o eroare în timpul executării codului.

Articole recomandate

Acesta a fost un ghid pentru Excel VBA Date. Aici am discutat despre cum să utilizăm funcțiile Excel VBA Data împreună cu exemple practice și șablon Excel descărcabil. De asemenea, puteți parcurge și alte articole sugerate -

  1. Ce este formatul VBA Data?
  2. Data de introducere Excel | Tutorial Excel
  3. VBA GoTo | Cum se folosește?
  4. Funcția Excel EDATE (Formula, Exemplu)
  5. Ce este VBA DateSerial?

Categorie: