V tomto tutoriáli sa budeme zaoberať rôznymi vstavanými funkciami dátumu VBA.
Funkcia dátumu VBA
Na vrátenie aktuálneho dátumu môžete použiť funkciu dátumu.
Syntax funkcie Date je Date (). Nemá žiadne argumenty.
Nasledujúci kód ukazuje, ako používať funkciu dátumu:
12345678 | Vedľajšie používanieTheDateFunction ()Stmaviť dátum ako dátumtheDate = Dátum ()Ladenie. Vytlačte dátumKoniec pod |
Výsledkom je:
Teraz funkcia VBA
Na vrátenie aktuálneho dátumu a času môžete použiť funkciu Teraz.
Syntax funkcie Now je Now (). Nemá žiadne argumenty.
Nasledujúci kód ukazuje, ako používať funkciu Teraz:
12345678 | Podradené používanieTheNowFunction ()Stmaviť dátum ako dátumtheDate = Teraz ()Ladenie. Vytlačte dátumKoniec pod |
Výsledkom je:
Časová funkcia VBA
Na vrátenie aktuálneho času môžete použiť funkciu Čas.
Syntax funkcie Čas je Time (). Nemá žiadne argumenty.
Nasledujúci kód ukazuje, ako používať funkciu času:
12345678 | Vedľajšie používanieTheTimeFunction ()Dim the Time as DatetheTime = Time ()Ladenie. Vytlačte časKoniec pod |
Výsledkom je:
Funkcia VBA DateAdd
Na pridanie intervalu dátumu/času k dátumu alebo času môžete použiť funkciu DateAdd a funkcia vráti výsledný dátum/čas.
Syntax funkcie DateAdd je:
DateAdd (interval, číslo, dátum), kde:
- Interval - Reťazec, ktorý určuje typ intervalu, ktorý sa má použiť. Interval môže byť jedna z nasledujúcich hodnôt:
„D“ - deň
„Ww“ - týždeň
„W“ - pracovný deň
„M“ - mesiac
„Q“ - štvrťrok
„Rrrr“ - rok
„Y“ - deň v roku
„H“ - hodina
„N“ - minúta
„S“ - druhé
- Číslo - počet intervalov, ktoré chcete pridať k pôvodnému dátumu/času.
- Dátum - pôvodný dátum/čas.
Poznámka: Ak v kóde používate dátumy, musíte ich vložiť do úvodzoviek alebo #.
Nasledujúci kód ukazuje, ako používať funkciu DateAdd:
123456789 | Čiastkové používanieTheDateAddFunction ()Dim laterDate As DatelaterDate = DateAdd ("m", 10, "11/12/2019")Debug.Print laterDateKoniec pod |
Výsledkom je:
Funkcia VBA DateDiff
Na získanie rozdielu medzi dvoma dátumami na základe zadaného časového intervalu môžete použiť funkciu DateDiff.
Syntax funkcie DateDiff je:
DateDiff (Interval, Date1, Date2, [Firstdayofweek], [Firstweekofyear]) kde:
- Interval - Reťazec, ktorý určuje typ intervalu, ktorý sa má použiť. Interval môže byť jedna z nasledujúcich hodnôt:
„D“ - deň
„Ww“ - týždeň
„W“ - pracovný deň
„M“ - mesiac
„Q“ - štvrťrok
„Rrrr“ - rok
„Y“ - deň v roku
„H“ - hodina
„N“ - minúta
„S“ - druhé
- Date1 - hodnota dátumu predstavujúca predchádzajúci dátum.
- Date2 - hodnota dátumu predstavujúca neskorší dátum.
- Prvý deň týždňa (Voliteľné) - Konštanta, ktorá určuje deň v týždni, ktorý by mala funkcia používať ako prvý deň v týždni. Ak je ako prvý deň v týždni prázdna nedeľa. Firstdayofweek môže byť jednou z nasledujúcich hodnôt:
-vb Nedeľa - používa nedeľu ako prvý deň v týždni.
-vbMonday - používa pondelok ako prvý deň v týždni.
-vbÚterý - používa utorok ako prvý deň v týždni.
-vb Streda - používa stredu ako prvý deň v týždni.
-vbŠtvrtok - používa štvrtok ako prvý deň v týždni.
-vbPiatok - používa piatok ako prvý deň v týždni.
-vbSobota - používa sobotu ako prvý deň v týždni.
-vbUseSystemDayOfTheWeek - používa prvý deň v týždni, ktorý je určený nastaveniami vášho systému.
- Prvý týždeň v týždni (Voliteľné) - Konštanta, ktorá určuje prvý týždeň v roku. Ak je prázdne, použije sa ako prvý týždeň v roku 1. január. Firstweekofyear môže byť jednou z nasledujúcich hodnôt:
-vbFirstJan1 - používa týždeň obsahujúci 1. januára.
-vbFirstFourDays - používa prvý týždeň, ktorý obsahuje najmenej štyri dni v novom roku.
-vbFirstFullWeek - používa prvý celý týždeň v roku.
-vbSystem - používa prvý týždeň v roku, ako je uvedené v nastaveniach systému.
Nasledujúci kód ukazuje, ako používať funkciu DateDiff:
123456789 | Čiastkové používanieTheDateDiffFunction ()Dim ako Rozdiel medzi dvoma dátumami stlmiťtheDifferenceBetweenTwoDates = DateDiff ("q", "11/11/2010", "10/12/2012")Debug. Vytlačte rozdiel medzi dvoma dátumamiKoniec pod |
Výsledkom je:
Funkcia VBA DatePart
Funkciu DatePart môžete použiť na vrátenie časti (dňa, týždňa, štvrťroka, mesiaca atď.) Daného dátumu.
Syntax funkcie DatePart je:
DatePart (interval, dátum, [Firstdayofweek], [Firstweekofyear]), kde:
- Interval - Reťazec, ktorý určuje časť dátumu návratu. Interval môže byť jedna z nasledujúcich hodnôt:
„D“ - deň
„Ww“ - týždeň
„W“ - pracovný deň
„M“ - mesiac
„Q“ - štvrťrok
„Rrrr“ - rok
„Y“ - deň v roku
„H“ - hodina
„N“ - minúta
„S“ - druhé
- Dátum - dátum, od ktorého má funkcia vrátiť časť.
- Prvý deň týždňa (Voliteľné) - Konštanta, ktorá určuje deň v týždni, ktorý by mala funkcia používať ako prvý deň v týždni. Ak je ako prvý deň v týždni prázdna nedeľa. Firstdayofweek môže byť jednou z nasledujúcich hodnôt:
-vb Nedeľa - používa nedeľu ako prvý deň v týždni.
-vbMonday - používa pondelok ako prvý deň v týždni.
-vbÚterý - používa utorok ako prvý deň v týždni.
-vb Streda - používa stredu ako prvý deň v týždni.
-vbŠtvrtok - používa štvrtok ako prvý deň v týždni.
-vbPiatok - používa piatok ako prvý deň v týždni.
-vbSobota - používa sobotu ako prvý deň v týždni.
-vbUseSystemDayOfTheWeek - používa prvý deň v týždni, ktorý je určený nastaveniami vášho systému.
- Prvý týždeň v týždni (Voliteľné) - Konštanta, ktorá určuje prvý týždeň v roku. Ak je prázdne, použije sa ako prvý týždeň v roku 1. január. Firstweekofyear môže byť jednou z nasledujúcich hodnôt:
-vbFirstJan1 - používa týždeň obsahujúci 1. januára.
-vbFirstFourDays - používa prvý týždeň, ktorý obsahuje najmenej štyri dni v novom roku.
-vbFirstFullWeek - používa prvý celý týždeň v roku.
-vbSystem - používa prvý týždeň v roku, ako je uvedené v nastaveniach systému.
Nasledujúci kód ukazuje, ako používať funkciu DatePart:
123456789 | Vedľajšie používanieTheDatePartFunction ()Dim thePartOfTheDate as IntegerthePartOfTheDate = DatePart („rrrr“, „12/12/2009“)Debug.Print thePartOfTheDateKoniec pod |
Výsledkom je:
Funkcia VBA DateSerial
Funkcia VBA DateSerial trvá vstupný rok, mesiac a deň a vracia dátum.
Syntax funkcie DateSerial je:
DateSerial (rok, mesiac, deň), kde:
- Year - celočíselná hodnota medzi 100 a 9999, ktorá predstavuje rok.
- Mesiac - celočíselná hodnota, ktorá predstavuje mesiac.
- Deň - celočíselná hodnota, ktorá predstavuje deň.
Nasledujúci kód ukazuje, ako používať funkciu DateSerial:
123456789 | Sub UsingTheDateSerialFunction ()Stmaviť dátum ako dátumtheDate = DateSerial (2010, 11, 10)Ladenie. Vytlačte dátumKoniec pod |
Výsledkom je:
Funkcia VBA DateValue
Funkcia DateValue vracia dátum, ak mu je poskytnutá reťazcová reprezentácia dátumu.
Syntax funkcie DateValue je:
DateValue (dátum) kde:
- Dátum - Reťazec predstavujúci dátum.
Nasledujúci kód ukazuje, ako používať funkciu DateValue:
123456789 | Čiastkové používanieTheDateValueFunction ()Stmaviť dátum ako dátumtheDate = DateValue ("29. október 2010")Ladenie. Vytlačte dátumKoniec pod |
Výsledkom je:
Denná funkcia VBA
Na vrátenie dňa zadaného dátumu môžete použiť funkciu deň.
Syntax funkcie dňa je:
Deň (dátum_hodnota), kde:
- Date_value - Dátum, z ktorého chcete extrahovať deň.
Nasledujúci kód vám ukáže, ako používať funkciu deň:
123456789 | Podradené používanieTheDayFunction ()Dim deň ako celé číslodeň = deň („10/12/2010“)Ladenie. Vytlačte deňKoniec pod |
Výsledkom je:
Hodinová funkcia VBA
Na vrátenie hodiny zadaného času môžete použiť hodinovú funkciu.
Syntax hodinovej funkcie je:
Hodina (čas), kde:
- Čas - čas, z ktorého chcete extrahovať hodinu.
Nasledujúci kód ukazuje, ako používať hodinovú funkciu:
123456789 | Vedľajšie používanieTheHourFunction ()Dim the Hodina ako celé číslotheHour = Hour ("2:14:17 AM")Ladenie. Vytlačte hodinuKoniec pod |
Výsledkom je:
Minútová funkcia VBA
Na vrátenie minútovej hodnoty zadaného času môžete použiť funkciu minúty.
Syntax funkcie minúty je:
Minúta (čas), kde:
- Čas - čas, z ktorého chcete extrahovať minútovú hodnotu.
Nasledujúci kód ukazuje, ako používať funkciu minútky:
123456789 | Podradené používanieTheMinuteFunction ()Dim theMinuteValue as IntegertheMinuteValue = minúta ("2:14:17 AM")Debug. Vytlačte hodnotu MinuteValueKoniec pod |
Výsledkom je:
Druhá funkcia VBA
Druhú funkciu môžete použiť na vrátenie druhej hodnoty vstupného času.
Syntax druhej funkcie je:
Druhý (čas), kde:
- Čas - čas, z ktorého chcete extrahovať druhú hodnotu.
Nasledujúci kód ukazuje, ako používať druhú funkciu:
123456789 | Čiastkové používanieTheSecondFunction ()Dim theSecondValue as IntegertheSecondValue = Second ("2:14:17 AM")Debug. VytlačteSecondValueKoniec pod |
Výsledkom je:
Mesačná funkcia VBA
Na vrátenie mesiaca zadaného dátumu môžete použiť funkciu Mesiac.
Syntax funkcie mesiaca je:
Mesiac (Date_value), kde:
- Date_value - Dátum, z ktorého chcete extrahovať mesiac.
Nasledujúci kód ukazuje, ako používať funkciu mesiaca:
12345678 | Podradené používanieTheMonthFunction ()Dim na mesiac ako celé číslomesiac = mesiac („18/11/2010“)Ladenie. Vytlačte mesiacKoniec pod |
Výsledkom je:
Funkcia VBA MonthName
Na vrátenie názvu mesiaca zo zadaného zadaného čísla mesiaca môžete použiť funkciu MonthName.
Syntax funkcie MonthName je:
MonthName (Number_of_month, [Abbreviate]) kde:
- Number_of_month - celočíselná hodnota medzi 1 a 12.
- Skrátiť (Voliteľné) - Špecifikuje, či má byť názov mesiaca skrátený. Ak je pole prázdne, použije sa predvolená hodnota False.
12345678 | Vedľajšie používanieTheMonthNameFunction ()Dim theMonthName as StringtheMonthName = MonthName (12, True)Debug. Vytlačte názov mesiacaKoniec pod |
Výsledkom je:
Funkcia VBA TimeSerial
Funkcia TimeSerial trvá jednu hodinu, minútu a sekundu a vráti čas.
Syntax funkcie TimeSerial je:
TimeSerial (hodina, minúta, sekunda), kde:
- Hodina - celočíselná hodnota medzi 0 a 23, ktorá predstavuje hodnotu hodiny.
- Minúta - celočíselná hodnota medzi 0 a 59, ktorá predstavuje minútovú hodnotu.
- Sekunda - celočíselná hodnota medzi 0 a 59, ktorá predstavuje druhú hodnotu.
Nasledujúci kód ukazuje, ako používať funkciu TimeSerial:
12345678 | Čiastkové používanieTheTimeSerialFunction ()Dim the Time as DatetheTime = TimeSerial (1, 10, 15)Ladenie. Vytlačte časKoniec pod |
Výsledkom je:
Funkcia VBA TimeValue
Funkcia TimeValue vracia čas z reťazcovej reprezentácie dátumu alebo času.
Syntax funkcie TimeValue je:
TimeValue (čas) kde:
- Čas - Reťazec predstavujúci čas.
Nasledujúci kód ukazuje, ako používať funkciu TimeValue:
12345678 | Čiastkové používanieTheTimeValueFunction ()Dim the Time as DatetheTime = TimeValue ("22:10:17")Ladenie. Vytlačte časKoniec pod |
Výsledkom je:
Funkcia všedného dňa VBA
Funkciu Weekday môžete použiť na vrátenie celého čísla od 1 do 7, ktoré predstavuje deň v týždni od zadaného dátumu.
Syntax funkcie Weekday je:
Pracovný deň (dátum, [prvý deň týždňa]), kde:
- Dátum - dátum, z ktorého chcete extrahovať hodnotu dňa v týždni.
- Prvý deň týždňa (Voliteľné) - Konštanta, ktorá určuje deň v týždni, ktorý by mala funkcia používať ako prvý deň v týždni. Ak je ako prvý deň v týždni prázdna nedeľa. Firstdayofweek môže byť jednou z nasledujúcich hodnôt:
-vb Nedeľa - používa nedeľu ako prvý deň v týždni.
-vbMonday - používa pondelok ako prvý deň v týždni.
-vbÚterý - používa utorok ako prvý deň v týždni.
-vb Streda - používa stredu ako prvý deň v týždni.
-vbŠtvrtok - používa štvrtok ako prvý deň v týždni.
-vbPiatok - používa piatok ako prvý deň v týždni.
-vbSobota - používa sobotu ako prvý deň v týždni.
-vbUseSystemDayOfTheWeek - používa prvý deň v týždni, ktorý je určený nastaveniami vášho systému.
Nasledujúci kód ukazuje, ako používať funkciu týždňa.
1234567 | Podradené používanieTheWeekdayFunction ()Dim theWeekDay As IntegertheWeekDay = deň v týždni („20.11.2019“)Debug. Vytlačte theWeekDayKoniec pod |
Výsledkom je:
Funkcia VBA WeekdayName
Na vrátenie názvu dňa v týždni zo zadaného čísla dňa v týždni môžete použiť funkciu WeekdayName.
Syntax funkcie WeekdayName je:
WeekdayName (Weekday, [Abbreviate], [Firstdayoftheweek]) where:
- Pracovný deň - celočíselná hodnota medzi 1 a 7.
- Skrátiť (Voliteľné) -Určuje, či sa má skrátiť názov dňa v týždni. Ak je pole prázdne, použije sa predvolená hodnota False.
- Prvý deň týždňa (Voliteľné) - Konštanta, ktorá určuje deň v týždni, ktorý by mala funkcia používať ako prvý deň v týždni. Ak je ako prvý deň v týždni prázdna nedeľa. Firstdayofweek môže byť jednou z nasledujúcich hodnôt:
-vb Nedeľa - používa nedeľu ako prvý deň v týždni.
-vbMonday - používa pondelok ako prvý deň v týždni.
-vbÚterý - používa utorok ako prvý deň v týždni.
-vb Streda - používa stredu ako prvý deň v týždni.
-vbŠtvrtok - používa štvrtok ako prvý deň v týždni.
-vbPiatok - používa piatok ako prvý deň v týždni.
-vbSobota - používa sobotu ako prvý deň v týždni.
-vbUseSystemDayOfTheWeek - používa prvý deň v týždni, ktorý je určený nastaveniami vášho systému.
12345678 | Podradené používanieTheWeekdayNameFunction ()Dim theWeekdayName As StringtheWeekdayName = WeekdayName (4)Ladenie. Vytlačte názov týždňaKoniec pod |
Výsledkom je:
Roková funkcia VBA
Na vrátenie roku zadaného dátumu môžete použiť funkciu Rok.
Syntax funkcie roka je:
Rok (dátum_hodnota), kde:
- Date_value - Dátum, z ktorého chcete extrahovať rok.
Nasledujúci kód ukazuje, ako používať funkciu Rok:
12345678 | Čiastkové používanieTheYearFunction ()Stmaviť rok ako celé číslorok = rok („11/12/2010“)Ladenie. Vytlačte rokKoniec pod |
Výsledkom je:
Porovnanie dátumov vo VBA
Dátumy môžete porovnávať pomocou operátorov>, <a = vo VBA. Nasledujúci kód ukazuje, ako porovnať dva dátumy vo VBA.
12345678910111213141516171819 | Dáta porovnávajúce dátumy ()Dim dateOne As DateDim dateDwo As DatedateOne = "10/10/2010"dateTwo = "11/11/2010"If dateOne> dateTwo ThenDebug.Print „dateOne je neskorší dátum“ElseIf dateOne = dateTwo ThenDebug.Print "Tieto dva dátumy sú rovnaké"InakDebug.Print „dateTwo is the later date“Koniec AkKoniec pod |
V tomto návode sa dozviete viac o formátovaní dátumov ako reťazcov.