Funkce VBA DateSerial | Jak používat funkci DateSerial? (Příklady)

Funkce Excel VBA DateSerial

Funkce DateSerial ve VBA vrací datum z hodnot zadaných uživateli. Musíme dodat, co je rok, co je den a co je měsíc. Výsledek bude založen na formátu data vašeho systému.

Níže je uvedena syntaxe funkce DATESERIAL .

# 1 - Rok: musíme zadat celé číslo, jaký je rok? Při zadávání celého čísla je třeba mít na paměti níže uvedené věci.

  • Můžeme dodat čísla od 0 do 9999.
  • S jednocifernými a dvoucifernými čísly od 0 do 99 bude zacházeno od roku 1930 do roku 2029.
  • Záporné celé číslo bude odečteno od roku 2000. Například pokud zadáte -1, bude výsledkem 1999 kvůli 2000 - 1 = 1999.

# 2 - Měsíc: musíme zadat celé číslo, jaký je měsíc? Při zadávání tohoto čísla je třeba mít na paměti níže uvedené věci.

  • Můžeme dodat pouze čísla od 1 do 12.
  • Pokud je zadaná celočíselná hodnota 0, bude to představovat měsíc „prosinec“ předchozího roku.
  • Pokud je zadaná celočíselná hodnota -1, bude to představovat měsíc „listopad“ předchozího roku. Když se záporná hodnota zvýší, bude i nadále představovat měsíc zpětného roku.
  • Pokud je zadané číslo větší než 12, tj. Pokud je číslo 13, bude to představovat měsíc „leden“ následujícího roku, pokud je číslo 14, bude to považováno za měsíc „únor“ následujícího roku.

# 3 - Den: musíme zadat celé číslo, jaký je den? Při zadávání tohoto čísla je třeba mít na paměti níže uvedené věci.

  • Můžeme zadat celočíselná čísla od 1 do 31 pro dny aktuálního měsíce.
  • Pokud je číslo 0, bude to představovat poslední den předchozího měsíce.
  • Pokud je číslo -1, bude to představovat druhý poslední den předchozího měsíce.
  • Pokud zadáte poslední den tohoto měsíce +1, bude to představovat první den následujícího měsíce. Například pokud je poslední den srpna 31 a pokud zadáte den jako 31 + 1, bude to představovat první den v září.

Jak používat funkci DATESERIAL ve VBA?

Tuto šablonu VBA DateSerial Excel si můžete stáhnout zde - Šablona VBA DateSerial Excel

Příklad č. 1

Chcete-li použít funkci DATESERIAL, začněte psát kód makra.

Krok 1: Spusťte dílčí postup

Nejprve vytvořte podproces VBA, jak je znázorněno níže.

Krok 2: Deklarovat proměnnou

Nyní deklarujte proměnnou jako DATE.

Krok 3: Přiřaďte této proměnné funkci DateSerial.

Nyní k této proměnné přiřaďte funkci DATESERIAL.

Krok 4: Nyní zadejte hodnoty roku, měsíce a dne ve funkci DateSerial

Pro YEAR supply 2019, for MONTH supply 08, and for DAY supply 05.

Krok 5: Zobrazit výsledek ve schránce zpráv

Nyní zobrazte výsledek proměnné „Moje datum“ v okně se zprávou.

Kód:

 Možnost Explicit Sub DateSerial_Example1 () Dim Mydate As Date Mydate = DateSerial (2019, 8, 5) MsgBox Mydate End Sub 

Krok 6: Spusťte kód

Nyní spusťte tento kód a podívejte se na níže uvedené datum.

Výsledek říká „5. 8. 2019“. V mém systémovém datovém formátu je formát „MM-DD-RRRR“, proto je výsledek také ve stejném formátu.

Můžeme také změnit formát data pomocí funkce FORMAT ve VBA. Použijte funkci FORMAT, jak je uvedeno níže.

Kód:

 Možnost Explicit Sub DateSerial_Example1 () Dim Mydate As Date Mydate = DateSerial (2019, 8, 5) MsgBox Format (Mydate, "DD-MMM-YYYY") End Sub 

Použije se formát „DD-MMM-RRRR“ a výsledek bude následující.

Příklad č. 2

Můžeme také deklarovat proměnné a poskytnout hodnoty těmto proměnným. Například se podívejte na níže uvedený kód.

Kód:

 Sub DateSerial_Example2 () Dim Mydate As Date Dim MyYear As Integer Dim MyMonth As Integer Dim MyDay As Integer MyYear = 2019 MyMonth = 8 MyDay = 5 Mydate = DateSerial (MyYear, MyMonth, MyDay) MsgBox Format (Mydate, "DD-MMM-YYY ") End Sub 

Místo toho, abychom dodávali rok, měsíc a den přímo do funkce DATESERIAL, deklarovali jsme proměnné a přiřadili jsme jim hodnoty. Později jsme do funkce DATESERIAL dodali proměnné.

Takto můžeme použít proměnné ve VBA k ukládání hodnot.

Příklad č. 3

Nyní budeme experimentovat s rokem. Přiřadím hodnotu roku jako 1 a uvidím výsledek.

Jednociferná a dvouciferná čísla v ROKU představují rok od roku 1930 do roku 2029. Takže 01 znamená 2001, 02 znamená 2002 atd.

Nyní změňme číslo měsíce na 0 a uvidíme výsledek.

Podívejte se na kód zde, Rok je 2019 a měsíc je 0. Ale podívejte se na výsledek, který říká 05-Dec-2019, zatímco dodaný rok je 2019, říká 2018, tj. Předchozí rok.

Je to proto, že protože jsme dodali měsíc jako 0 DATESERIAL, funkce trvá měsíc do posledního měsíce předchozího roku a podle toho také mění rok.

Takto vyzkoušejte různá čísla, abyste viděli dopad funkce.

Věci k zapamatování

  • Musíte vědět, jaké číslo představuje který rok, měsíc a denní péči. Přečtěte si pozorně vysvětlení syntaxe, abyste tomu porozuměli.
  • Výsledek bude založen na formátu data vašeho systému, pokud chcete upravit výsledek, musíte použít funkci FORMAT a uveďte formát data podle vašeho pohodlí.