Sadržaj
U aplikaciji Microsoft Visual Basic funkcije datuma ili bilo koji koncepti povezani s datumom neophodni su za izvođenje raznih operacija u vašem skupu podataka. Možete se naći u različitim situacijama u kojima ćete morati koristiti ove funkcije. U ovom ćete vodiču naučiti o funkciji datuma u VBA s prikladnim primjerima i odgovarajućim ilustracijama. Također, pružit ćemo vam višestruke funkcije za datume koje možete implementirati u svoj radni list.
Preuzmite vježbovnu bilježnicu
Upotrebe VBA Date.xlsm
Uvod u VBA funkciju datuma
Excel kategorizira datume u funkciji Datum/vrijeme . To je ugrađena funkcija. Možemo ga koristiti u VBA makronaredbama za izvođenje bilo kakvih operacija povezanih s datumom.
Prije nego počnete s funkcijom Datum, morate znati o varijablama datuma u VBA .
⏺ Sintaksa
Datum()⏺ Argumenti Objašnjenja
Nema argumenata .
⏺ Vraća
Vraća trenutni datum.
⏺ Dostupno u
Excel za Office 365, Excel 2019, Excel 2016, Excel 2013, Excel 2011 za Mac, Excel 2010, Excel 2007, Excel 2003, Excel XP, Excel 2000
⏺ Primjer
Kao što znate, nema argumenata, možete ih samo unijeti na sljedeći način:
3237
Kada radimo s funkcijom Datum, ne stavljamo nikakve zagrade u VBA kodove kao u ovom primjeru.
Izlaz :
12Nedjelja
2 – Ponedjeljak
3 – Utorak
4 – Srijeda
5 – četvrtak
6 – petak
7 – subota
Isječak koda:
4326
Izlaz:
Kao što vidite, VBA funkcija datuma vraća 4. To znači Srijeda.
Povezani sadržaj: Kako koristiti funkciju popravka u programu Excel VBA (4 primjera)
9. VBA funkcija WeekdayName
Vraća niz koji prikazuje ograničeni dan u tjednu.
Sintaksa :
Nazivdana u tjednu(dan u tjednu, skraćeno, prvidan u tjednu)
Argument:
radni dan: Obavezno polje. Numerička identifikacija za dan u tjednu. Numerička vrijednost svakog dana ovisi o postavci prvog dana u tjednu.
skraćeno: Ovo je izborno. Booleova vrijednost koja implicira hoće li se naziv dana u tjednu skratiti. Ako se preskoči, zadana vrijednost je False, što znači da naziv dana u tjednu nije skraćen ili skraćen.
prvi dan u tjednu: Neobavezno polje. Numerička vrijednost koja označava prvi dan u tjednu. Može imati različite vrijednosti.
Argument firstdayofweek može imati sljedeće vrijednosti:
vbSunday – koristi nedjelju kao prvi dan u tjednu.
vbMonday – koristi ponedjeljak kao prvi dan u tjednu.
vbTuesday – radi utorak kao prvi dan dan odtjedan.
vbSrijeda – upotrebljava srijedu kao prvi dan u tjednu.
vbČetvrtak – radi četvrtak kao bolji dan u tjednu .
vbPetak – koristi petak kao prvi dan u tjednu.
vbSubota – radi subotu kao prvi dan u tjednu.
vbUseSystemDayOfTheWeek – koristi prvi dan u tjednu koji je definiran postavkom vašeg uređaja.
Isječak koda:
8544
Izlaz:
Kao što vidite, gornji VBA kodovi prikazuju naziv dana u tjednu.
Povezani sadržaj: Kako za korištenje funkcije VBA WeekdayName u Excelu (2 primjera)
10. Funkcija Year u VBA Datum
Ona vraća varijantu (cijeli broj) koja ima stvarni broj koji izražava godinu.
Sintaksa :
Godina(datum)
Argument:
Potrebni argument datuma je bilo koja varijanta, numerički izraz, izraz niza ili bilo koja kombinacija. Predstavlja datum. Ako datum uključuje Null, također će vratiti Null.
Isječak koda:
1264
Izlaz:
Ovdje možete vidjeti godinu zadanog datuma nakon implementacije VBA koda.
Pročitajte više: Kako koristiti VBA funkciju zamjene u Excelu ( 11 Aplikacije)
11. Funkcija FormatDateTime
Ova funkcija vraća izraz formatiran kao datum ili vrijeme.
Sintaksa :
FormatDateTime(Datum, [ NamedFormat])
Argument:
Datum: Obavezno polje. Datumski izraz koji treba oblikovati.
NamedFormat: Ovo je izborno. To je numerička vrijednost koja prikazuje format datuma/vremena. Ako je izostavljen, koristio je vbGeneralDate .
NamedFormat može imati sljedeće vrijednosti:
vbGeneralDate (0): Prikaži datum i/ili vrijeme. Ako postoji dio s datumom, izrazite ga kao kratak datum. Ako postoji vremenski dio, prikažite ga kao dugo vrijeme. Oba su dijela izložena ako su prisutna.
vbLongDate(1): Prikaz datuma pomoću konfiguracije dugog datuma odabrane u regionalnim postavkama vašeg računala.
vbShortDate (2): Prikažite datum korištenjem kratkog formata datuma određenog u regionalnim postavkama vašeg računala.
vbLongTime(3): Prikažite vrijeme korištenjem formata vremena navedenog u regionalne postavke vašeg računala.
vbShortTime(4): Prikažite vrijeme u 24-satnom formatu (hh:mm).
Isječak koda:
5779
Izlaz:
Vidjet ćete sljedeće dijaloške okvire nakon pokretanja koda:
Ovdje možete vidjeti sve formate vremena i datuma u VBA.
Pročitajte više: Kako koristiti VBA funkciju TimeValue (6 relevantnih primjera)
12. VBA CDate funkcija
Funkcija pretvara važeći izraz datuma i vremena u tipičan datum.
Sintaksa :
CDatum(datum)
Argument:
Potrebni argument datuma je bilo koja varijanta, numerički izraz, izraz niza ili bilo koja kombinacija. Predstavlja datum. Ako datum uključuje Null, također će vratiti Null.
Isječak koda:
9092
Izlaz:
Kao što vidite, naš VBA kod upravo je vratio tipičan format datuma programa Excel.
Povezani sadržaj: Kako koristiti VBA DIR funkciju u programu Excel (7 primjera)
Primjeri VBA datuma
U sljedećim odjeljcima pružit ćemo vam tri praktična i prikladna primjera datuma pomoću VBA. Ovi primjeri će sadržavati probleme vezane uz datume i njihova rješenja. Preporučujemo da pročitate i vježbate sve ove primjere kako biste poboljšali svoje znanje VBA. Krenimo na to.
1. Izračunajte dane kašnjenja pomoću datuma u VBA
Značenje kašnjenja je kasno ili nakon isteka roka. Kasno, posebice, nakon isteka roka ili prekasno za ispunjavanje uvjeta.
Pretpostavimo da morate predati zadatak do nedjelje. Ali utorak je, a vi ga niste predali. Možete to nazvati dva dana kašnjenja.
Pogledajte sljedeći skup podataka:
Ovdje imamo skup podataka nekih učenika i njihovu predaju zadataka datum. Možete vidjeti posljednji datum predaje. Naš cilj je pronaći datum kašnjenja na temelju datuma podnošenja. Sada, da biste to postigli, slijedite ove korake:
📌 Koraci
- Prvo pritisnite Alt+F11 na tipkovnici za otvaranje VBA editora.
- Zatim odaberite Umetni > Modul .
- Nakon toga upišite sljedeći kod:
5640
Koristili smo ABS funkcija za uklanjanje znaka minus.
- Zatim spremite datoteku.
- Nakon toga pritisnite Alt+F8 na tipkovnici za otvaranje dijaloški okvir Makro.
- Zatim odaberite
- Zatim kliknite na Pokreni .
Kao što vidite, uspješno smo upotrijebili datum u VBA i pronašli dane kašnjenja.
Slična čitanja
- Kako koristiti VBA prostor Funkcija u programu Excel (3 primjera)
- Koristite funkciju VBA ChDir u programu Excel (4 prikladna primjera)
- Kako koristiti funkciju IsNull u programu Excel VBA (5 primjera)
- Koristite naredbu VBA While Wend u Excelu (4 primjera)
- Kako pozvati Sub u VBA u Excelu (4 Primjeri)
2. Pronađite godinu rođenja prema datumu koristeći VBA
Sada možete pronaći godinu od određenog datuma. Ovo je prilično jednostavno pronaći.
Pogledajte sljedeći skup podataka:
Ovdje možete vidjeti datume rođenja nekih osoba. Naš je cilj izvući godinu rođenja iz datuma, a također i godinu rođenja posljednjeg unosa Elizabeth.
📌 Koraci
- Prvo pritisnite Alt+F11 na tipkovnici za otvaranje VBA uređivača.
- Zatim odaberite Umetni>modul .
- Nakon toga upišitesljedeći kod:
6359
- Zatim spremite datoteku.
- Nakon toga pritisnite Alt+F8 na tipkovnici da biste otvorili dijaloški okvir Macro okvir.
- Zatim odaberite find_year .
- Zatim kliknite na Pokreni .
Konačno, možete vidjeti da smo uspješni u izdvajanju godine rođenja iz svakog datuma. Također, pronašli smo godinu rođenja posljednjeg unosa pomoću datuma VBA u Excelu.
3. Dodajte dane u datum pomoću VBA
Sada možete definirati varijablu datuma i koristiti je za dodavanje datuma. Da bismo to izveli, koristimo DateAdd metodu VBA. Ovu funkciju možete koristiti za dodavanje dana, mjeseci i godina određenom datumu.
Pogledajte sljedeći skup podataka:
Ovdje, može vidjeti neka imena i neke datume pridružene njima. Sada je naš cilj dodati još pet dana ovim danim datumima i generirati novi datum.
📌 Koraci
- Prvo pritisnite Alt +F11 na tipkovnici za otvaranje VBA uređivača.
- Zatim odaberite Umetni>modul .
- Nakon toga upišite sljedeći kod:
9996
Ovdje smo koristili “d” kao argument u funkciji DateAdd. Možete ga promijeniti u “y” ili “m” da dodate godine ili mjesece, redom,
- Zatim spremite datoteku.
- Nakon toga pritisnite Alt+F8 na tipkovnici da biste otvorili dijaloški okvir Macro.
- Zatim odaberite.
- Zatim kliknite Pokreni .
Koliko možetevidite, uspješno smo dodali dane u datum koristeći datum u VBA. Sada možete modificirati kod prema vlastitom izboru.
💬 Stvari koje treba zapamtiti
✎ VBA funkcija Datum zapravo radi kao funkcija TODAY u Excelu.
✎ VBA DATUM je nepromjenjiva funkcija u Excelu. To znači da će zadržati podatke čak i ako dođe do prekida napajanja.
✎
U osnovi, VBA sprema datumske vrijednosti kao DATUM u vrijeme implementacije.
✎
Dakle, ako pokušate dodijeliti varijablu datuma kao niz/tekst, to će izazvati pogrešku.
✎
Zadana vrijednost Datuma je 0: 00:00 (ponoć) 1. siječnja 0001.
Zaključak
Za kraj, nadam se da vam je ovaj vodič pružio djelić korisnog znanja o datumu u VBA kodovima. Preporučujemo da naučite i primijenite sve ove upute na svoj skup podataka. Preuzmite radnu bilježnicu za vježbanje i isprobajte ih sami. Također, slobodno dajte povratne informacije u odjeljku za komentare. Vaše vrijedne povratne informacije motiviraju nas za izradu ovakvih vodiča.
Ne zaboravite provjeriti našu web stranicu Exceldemy.com za različite probleme i rješenja u vezi s Excelom.
Nastavite učiti nove metode i nastavite rasti!
Funkcije datuma u VBA koje biste trebali naučitiSada, u nadolazećim odjeljcima, pokazat ćemo vam neke dodatne funkcije datuma koje možete koristiti u brojne svrhe u VBA. Pročitajte ove odjeljke da biste saznali sve moguće načine rada s datumom u VBA. Predlažemo da ih zadržite u svom arsenalu. Sigurno će poboljšati vaše znanje.
1. Funkcija DateAdd kao datum u VBA
U VBA koristimo funkciju DateAdd za dodavanje dana u određeni datum. Nakon toga, vratit će rezultirajući datum.
Sintaksa:
DateAdd(interval, broj, datum)
Argumenti:
interval: Potrebno je. Izraz niza je interval vremena koji želite dodati.
broj: Obavezno. To je numerički izraz koji predstavlja broj intervala koje želite dodati. Može biti pozitivan (za dobivanje datuma u budućnosti) ili negativan (za dobivanje datuma u prošlosti).
datum: Izvorni datum/vrijeme.
Sada, interval argumenti mogu imati sljedeće postavke:
yyyy – Godina
q – Tromjesečje
m – Mjesec
y – Dan u godini
d – Dan
w – Radni dan
ww – Tjedan
h – Sat
n – Minuta
s – Sekunda
Isječak koda :
7352
Izlaz:
Kao što vidite, dodao je 15 datuma u trenutnom datumu uVBA.
Pročitajte više: Kako koristiti funkciju IsDate u VBA (3 primjera)
2. Funkcija DateDiff u VBA
Funkcija DateDiff vraća Variant (Long) određujući broj vremenskih razmaka između dva navedena datuma.
Sintaksa :
DateDiff( interval, datum1, datum2, [ prvi dan u tjednu, [ prvi tjedan u godini ]] )
Argumenti:
interval: To je Potreban. String izraz je interval vremena koji želite dodatiString izrazu koji je vremenski razmak koji koristite za izračunavanje razlike između dva datuma.
datum1,datum2 : Obavezno; Varijanta (Datum). Dva datuma koja želite koristiti u izračunu.
prvi dan u tjednu: Opcionalno. Konstanta koja definira prvi dan u tjednu. Ako nije fiksno, pretpostavlja se nedjelja.
prvi tjedan u godini: Izborno. Konstanta koja određuje prvi tjedan u godini. Ako nije postavljeno, prvi bi tjedan trebao biti tjedan u kojem se pojavljuje 1. siječnja.
Sada, argumenti intervala mogu imati sljedeće postavke:
gggg – Godina
q – Tromjesečje
m – Mjesec
y – Dan u godini
d – Dan
w – Dan u tjednu
ww – Tjedan
h – Sat
n – Minuta
s – Drugi
Argument prvi dan u tjednu ima ove postavke:
vbNedjelja –koristi nedjelju kao prvi dan u tjednu.
vbMonday – koristi ponedjeljak kao prvi dan u tjednu.
vbTuesday – radi utorkom kao prvi dan u tjednu.
vbSrijeda – koristi srijedu kao prvi dan u tjednu.
vbČetvrtak – radi četvrtak kao radije dan u tjednu.
vbPetak – koristi petak kao prvi dan u tjednu.
vbSubota – radi subotu kao prvi dan u tjednu.
vbUseSystemDayOfTheWeek – koristi prvi dan u tjednu koji je definiran postavkom vašeg uređaja.
firstweekofyear ima ove postavke:
vbFirstJan1 – koristi tjedan koji sadrži 1. siječnja.
vbFirstFourDays – koristi prvi tjedan koji ima najmanje četiri dana u novoj godini.
vbFirstFullWeek – radi prvi puni tjedan u godini.
vbSystem – koristi prvi tjedan u godine kako je definirano lokacijama vašeg uređaja.
Code Snippet:
8407
Out put :
Na kraju, vraća razliku između dva datuma u VBA.
Pročitajte više: Kako koristiti VBA funkciju DateDiff u Excelu (9 primjera)
3. Funkcija DatePart kao datum
Funkcija DatePart vraća varijantu (cijeli broj) koja sadrži definirani dio navedeni datum.
Sintaksa :
DatumPart(interval, datum, [ prvidan u tjednu, [prvi tjedan godine ]])
Argumenti:
interval: Potrebno je. String izraz je interval vremena koji želite dodatiString izrazu koji je vremenski razmak koji koristite za izračunavanje razlike između dva datuma.
datum: Obavezno; Varijanta (Datum). Datum koji želite koristiti u izračunu.
prvi dan u tjednu: Opcionalno. Konstanta koja definira prvi dan u tjednu. Ako nije fiksno, pretpostavlja se nedjelja.
prvi tjedan u godini: Izborno. Konstanta koja određuje prvi tjedan u godini. Ako nije postavljeno, prvi bi tjedan trebao biti tjedan u kojem se pojavljuje 1. siječnja.
Sada, argumenti intervala mogu imati sljedeće postavke:
gggg – Godina
q – Tromjesečje
m – Mjesec
y – Dan u godini
d – Dan
w – Dan u tjednu
ww – Tjedan
h – Sat
n – Minuta
s – Drugi
Argument prvi dan u tjednu ima ove postavke:
vbNedjelja – koristi nedjelju kao prvi dan u tjednu.
vbMonday – koristi ponedjeljak kao prvi dan u tjednu.
vbTuesday – radi utorak kao prvi dan u tjednu.
vbSrijeda – koristi srijedu kao prvi dan u tjednu.
vbČetvrtak – radi četvrtak kao bolji dan u tjednutjedan.
vbPetak – koristi petak kao prvi dan u tjednu.
vbSubota – radi subotu kao prvi dan u tjednu.
vbUseSystemDayOfTheWeek – koristi prvi dan u tjednu koji je definiran postavkom vašeg uređaja.
prvi tjedan godine ima ove vrijednosti:
vbFirstJan1 – radi u tjednu uključujući 1. siječnja.
vbFirstFourDays – koristi prvi tjedan koji ima najviše četiri premala dana u nova godina.
vbFirstFullWeek – koristi prvi puni tjedan u godini.
vbSystem – koristi prvi tjedan u godini kako je odabrano prema lokacijama vašeg uređaja.
Isječak koda :
5975
Izlaz :
Na ovaj način možete koristiti ovu funkciju datuma u VBA kodovima.
Pročitajte više: Kako koristiti VBA funkciju FileDateTime u Excelu (3 upotrebe)
4. Funkcija DateSerial
Možete vidjeti datum na temelju unesene godine, mjeseca i dana pomoću funkcije DateSerial .
Sintaksa:
DateSerial(godina, mjesec, dan)
Argumenti:
godina – Obavezno polje. Broj između 100 i 9999, uključivo, ili numerički izraz koji simbolizira godinu.
mjesec – Obavezno polje. Cjelobrojna vrijednost koja definira mjesec.
dan – Obavezno polje. Vrijednost cijelog broja koja opisuje dan.
Isječak koda:
6375
Izlaz :
Pročitajte više: Kako koristiti VBA TimeSerial u Excelu (3 primjera)
4. VBA Funkcija DateValue
Sada koristimo funkciju DateValue za definiranje datuma.
Sintaksa :
DateValue(datum)
Argument:
Ovdje je argument datum obično izraz niza koji opisuje datum od 1. siječnja 100. , do 31. prosinca 9999. Bez obzira na to, datum može nadalje bilo koji izraz koji može simbolizirati datum, vrijeme ili i datum i vrijeme u tom rasponu.
Isječak koda:
9869
Izlaz :
Kao što vidite, uspješno smo upotrijebili funkciju datuma u VBA kodovima.
5. Funkcija dana u VBA
Vraća varijantu (cijeli broj) određujući realni broj između 1 i 31, uključivo, prenoseći dan u mjesecu.
Sintaksa :
Dan(datum)
Argument:
Potrebni argument datuma je bilo koja varijanta , numerički izraz, izraz niza ili bilo koja kombinacija. Predstavlja datum. Ako datum uključuje Null, također će vratiti Null.
Isječak koda:
7869
Izlaz:
Kao što vidite, korištenjem VBA kodova pronašli smo da je dan zadanog datuma 12.
Povezani sadržaj: Funkcija VBA formata u Excel (8 upotreba s primjerima)
6. VBA funkcija mjeseca kao datuma
Vraća varijantu (cijeli broj) definirajući realni broj između 1 i 12,uključivo, prenoseći mjesec u godini.
Sintaksa :
Mjesec(datum)
Argument:
Potrebni argument datuma je bilo koja varijanta, numerički izraz, izraz niza ili bilo koja kombinacija. Predstavlja datum. Ako datum uključuje Null, također će vratiti Null.
Isječak koda:
5629
Izlaz:
Povezani sadržaj: Kako koristiti VBA pravu funkciju u Excelu (6 primjera)
Slična čitanja
- Kako koristiti VBA Environ funkciju (4 primjera)
- Kako koristiti VBA i funkciju u Excelu (4 primjera)
- VBA If – Then – Else izjava u Excelu (4 primjera)
- Kako koristiti VBA Abs funkciju u Excelu (9 primjera)
- Kako koristiti Concatenate u programu Excel VBA (4 metode)
7. Funkcija MonthName
Ona vraća niz koji pokazuje navedeni mjesec.
Sintaksa :
Naziv mjeseca(mjesec, [ skraćeno ])
Argument:
mjesec: Potrebno je. Brojčani naziv mjeseca. Na primjer, siječanj je 1, veljača je 2, i tako dalje.
skraćeno: Nije obavezno. Booleova vrijednost koja pokazuje treba li naziv mjeseca biti skraćen. Ako se preskoči, zadana vrijednost je False, što znači da naziv mjeseca nije skraćen.
Isječak koda:
2994
Izlaz:
Kao što vidite, pronašli smo naziv mjesecaovom VBA funkcijom datuma.
8. Funkcija dana u tjednu
Ona vraća varijantu ( cijeli broj ) koja posjeduje realni broj koji izražava dan tjedan.
Sintaksa :
Radni dan(datum, [ prvidan u tjednu])
Argument:
datum: Potrebni argument datuma je bilo koja varijanta, numerički izraz, izraz niza ili bilo koja kombinacija. Predstavlja datum. Ako datum uključuje Null, također će vratiti Null.
prvi dan u tjednu: Opcionalno. Konstanta koja definira prvi dan u tjednu. Ako nije fiksno, pretpostavlja se nedjelja.
Argument firstdayofweek ima ove postavke:
vbSunday – koristi nedjelju kao prvi dan u tjednu.
vbMonday – koristi ponedjeljak kao prvi dan u tjednu.
vbTuesday – radi utorak kao prvi dan dan u tjednu.
vbSrijeda – upotrebljava srijedu kao prvi dan u tjednu.
vbČetvrtak – radi četvrtak kao bolji dan od tjedan.
vbPetak – koristi petak kao prvi dan u tjednu.
vbSubota – radi subotu kao prvi dan u tjednu .
vbUseSystemDayOfTheWeek – koristi prvi dan u tjednu koji je definiran postavkom vašeg uređaja.
Povratni parametri
Ova funkcija vraća cijeli broj. Dakle, značenje tih cijelih brojeva je sljedeće:
1 –