Excel VBA datum

Postoje neke funkcije koje su stvarno vrlo korisne, a mi postavljamo život bez da te funkcije budu VBA korisnik. DATE funkcija je jedna od onih funkcija koja ponekad može biti vrlo korisna i programeru olakšati život. U Excelovoj proračunskoj tablici postoji funkcija nazvana TODAY () koja daje trenutni datum kao rezultat na temelju datuma sustava. Na sličnim linijama VBA ima funkciju DATE koja daje trenutni datum na temelju datuma sustava.

VBA DATE funkcija vraća trenutni datum na temelju datuma sustava kao rezultat i ima vrlo jednostavnu sintaksu.

Ova funkcija nema argument za prosljeđivanje dolazi s nazivom funkcije i praznim zagradama. Nije obvezno dodavati zagrade i tijekom pozivanja ove funkcije. Nije li ta funkcija uistinu jednostavna?

Sintaksa funkcije DATE u VBA.

Kako koristiti Excel VBA funkciju datuma?

Naučit ćemo kako koristiti funkciju VBA Date s nekoliko primjera u excelu.

Ovdje možete preuzeti ovaj VBA predložak datuma Excel - Predložak VBA Date Excel

VBA Datumna funkcija - Primjer # 1

Pretpostavimo da ste željeli vidjeti trenutni datum u MsgBoxu. Kako to možeš uraditi? Samo slijedite korake u nastavku i proći ćete.

Korak 1: Umetnite novi modul u svoj Visual Basic Editor.

Korak 2: Definirajte podprocedu za pisanje izrade i spremanja makronaredbe.

Kodirati:

 Sub DatumEx1 () Kraj Sub 

Korak 3: Definirajte varijablu pod nazivom CurrDate koja može sadržavati vrijednost tekućeg datuma. S obzirom da ćemo ovoj varijabli dodijeliti vrijednost datuma, obavezno je definirajte kao datum.

Kodirati:

 Sub DateEx1 () Dim CurrDate Kao datum završetka Sub 

Korak 4: Pomoću operatora dodjele dodijelite vrijednost trenutnog datuma sustava varijabli novostvorenoj. Morate dodati DATE kako biste dodijelili vrijednost datuma. Koristite sljedeći dio koda:

Kodirati:

 Sub DateEx1 () Dim CurrDate Kao datum CurrDate = Datum završetka Sub 

Korak 5: Upotrijebite MsgBox da biste mogli vidjeti trenutni datum sustava u okviru Box Box upita. Koristite liniju koda navedenu u nastavku:

Kodirati:

 Sub DateEx1 () Dim CurrDate Kao datum CurrDate = Datum MsgBox "Današnji datum je:" & CurrDate Kraj Sub 

Korak 6: Pritisnite F5 ili ručno pokrenite gumb za pokretanje ovog koda. Moći ćete vidjeti okvir s porukama kao što je prikazano na snimci zaslona s trenutnim datumom.

Imajte na umu da je datum prikazan na snimci zaslona datum na kojem sam pokrenuo ovu skriptu. Možda dobivate drugi datum u vrijeme pokretanja ovog koda na temelju datuma vašeg sustava.

Ovo je najjednostavniji primjer dobivanja trenutnog datuma. Možete koristiti i funkciju Cells.Value da biste dobili vrijednost datuma u određenoj ćeliji svog excel lista.

VBA datumska funkcija - primjer br. 2

Rok za plaćanje EMI kuće zajma

Pretpostavimo da imam radni list i potreban mi je sustav koji će mi pokazati poruku " Hej! Danas morate platiti svoj EMI. "Svaki put kad otvorim list i vrijednost u ćeliji A1 je trenutni datum sustava. Pogledajmo korak po korak kako to možemo učiniti.

Korak 1: Umetnite novi modul i definirajte novi pod-postupak nazvan auto_open () da biste stvorili makronaredbu. auto_open () omogućuje da se vaš makronaredba automatski pokrene svaki put kada otvorite radni list.

Kodirati:

 Sub auto_open () Kraj Sub 

Korak 2: Upotrijebite If if da biste dodijelili vrijednost trenutnog datuma u ćeliji A1 radnog lista HomeLoan_EMI.

Kodirati:

 Sub auto_open () Ako listovi ("HomeLoan_EMI"). Raspon ("A1") Vrijednost = Datum Kraj Sub 

Korak 3: Koristite Zatim u istom retku nakon IF-a tako da možemo dodati izjavu koja će se izvršiti sve dok je uvjet if-true.

Kodirati:

 Sub auto_open () Ako listovi ("HomeLoan_EMI"). Raspon ("A1"). Vrijednost = Datum Zatim Kraj Sub 

Korak 4: Dodajte naredbu koja se izvršava za uvjet koji je istinit.

Kodirati:

 Sub auto_open () Ako listovi ("HomeLoan_EMI"). Raspon ("A1"). Vrijednost = Datum Zatim MsgBox ("Hej! Danas morate platiti svoj EMI.") Kraj Sub 

Ta će se izjava pojaviti pod porukom poruke čim je uvjet ispunjen.

Korak 5: Kao što znamo, svaki uvjet IF uvijek je trebao drugi uvjet. Dodajte uvjet Else u ovu petlju.

Kodirati:

 Sub auto_open () Ako listovi ("HomeLoan_EMI"). Raspon ("A1"). Vrijednost = Datum Zatim MsgBox ("Hej! Danas morate platiti svoj EMI.") Ostalo Izađite iz Potkraj Sub 

Ovaj drugi uvjet ukida automatski otvaranje Makronaredbe ako datum u ćeliji A1 nije trenutni datum sustava.

Korak 6: Završite petlju IF pomoću iskaza End IF.

Kodirati:

 Sub auto_open () Ako listovi ("HomeLoan_EMI"). Raspon ("A1"). Vrijednost = Datum Zatim MsgBox ("Hej! Danas morate platiti svoj EMI.") Ostatak Izlaz Pod kraj Ako Kraj Sub 

Korak 7: To je to, sada će svaki put kad otvorite svoj radni list automatski pokrenuti gornji kôd i vidjeti hoće li vrijednost datuma u ćeliji A1 biti vaš rok EMI ili ne. Ako je datum roka EMI jednak datumu sustava, prikazat će poruku kao što slijedi:

VBA datumska funkcija - primjer # 3

Datum VBA kako biste saznali primatelja plaćanja kreditne kartice

Pretpostavimo da imam popis kupaca koji imaju kreditnu karticu i želite znati tko danas treba platiti. Tako da ih možete nazvati i tražiti da im EOD odmah plati dospijeće.

Datum VBA mogao bi vam biti koristan jer vam omogućuje automatizaciju stvari umjesto provjere datuma jedan po jedan. Pogledajmo kako to učiniti korak po korak:

Korak 1: Definirajte novu makronaredbu pomoću pod-postupka pod modulom.

Kodirati:

 Sub DatumEx3 () Kraj Sub 

Korak 2: Definirajte dvije nove varijable od kojih će jedna biti korisna u petlji koda i druga kako bi se zadržala vrijednost trenutnog datuma sustava.

Kodirati:

 Sub DateEx3 () Dim DateDue Kao datum Dim i As Long DateDue = Datum i = 2 Kraj Sub 

Korak 3: Sada upotrijebite sljedeći dio koda koji vam pomaže u pretraživanju osobe koja ima rok plaćanja kreditne kartice kao trenutni datum sustava. Ovaj kôd omogućava provjeru Kupca koji ima plaćanje računa na tekući datum sustava, zajedno s iznosom računa.

Kodirati:

 Pod DateEx3 () Dim DateDue Kao datum Dim i Kao Long DateDue = Datum i = 2 Za i = 2 Za listove ("CC_Bill"). Stanice (Redovi.Sbroj, 1) .Dovrši (xlUp). Godina (DatumDue), Mjesec (Sheets ("CC_Bill"). Stanice (i, 3) .Value), Dan (Sheets ("CC_Bill"). Stanice (i, 3) .Value)) Zatim MsgBox "Ime kupca:" & Sheets ("CC_Bill"). Stanice (i, 1) .Value & vbNewLine & "Premium Iznos:" & Sheets ("CC_Bill"). Stanice (i, 2). End thealse Ako Next i End Sub 

Korak 4: Pokrenite ovaj kôd pritiskom na F5 ili Run gumb i ručno pogledajte izlaz.

Na prvoj iteraciji možemo vidjeti da je Mohan taj koji ima 12.900 računa 29. rujna 2019. (Trenutni datum sustava na kojem se pokreće ovaj kod). Ako pritisnemo OK, možemo vidjeti sljedeće ime kupca koji ima račun do 29. travnja 2019. (Rajani je sljedeći).

Ovaj će vam kôd stvarno biti koristan kada imate milijune redaka kupaca koji imaju jedan račun koji dospijevaju jednog dana. Imajte na umu da se sve skripte spomenute u ovom članku pokreću 29. travnja-2019. Možete dobiti različitu vrijednost datuma kada pokrenete ove uzorke kodova temeljeni na datumu sustava.

Stvari koje treba zapamtiti

  • VBA DATE funkcija vraća trenutni datum sustava i paralelno s Excel-ovom funkcijom TODAY ().
  • VBA DATE funkcija nema argument koji bi se mogao poslati u excelu. Ne treba čak i zagrade da se pozivaju dok se ova funkcija koristi u kodu.
  • VBA DATE je neisparljiva funkcija u excelu.
  • VBA pohranjuje vrijednosti datuma kao DATE u vrijeme izvršenja. Dakle, ne definira vrijednost varijable držanja kao String / Integer. To će uzrokovati pogrešku tijekom izvršavanja koda.

Preporučeni članci

Ovo je vodič za Excel VBA datum. Ovdje smo raspravljali o tome kako koristiti Excel VBA Date Functions zajedno s praktičnim primjerima i preuzeti Excel predložak. Možete i pregledati naše druge predložene članke -

  1. Što je format VBA datuma?
  2. Excel Datum umetanja | Vodič za Excel
  3. VBA GoTo | Kako koristiti?
  4. EDATE Excel funkcija (formula, primjer)
  5. Što je VBA DateSerial?

Kategorija: