Funkce VBA DatePart | Jak vrátit zadanou část data?

Funkce Excel VBA DatePart

DatePart ve VBA se používá k identifikaci části data pro dané datum poskytnuté jako argument, část data může být buď dny nebo měsíce nebo rok nebo dokonce hodinové minuty a sekundy, syntaxe této funkce se velmi objasňuje a je to následující, Datepart (Interval, Datum jako argument).

Syntax

Syntaxe funkce DatePart je uvedena níže:

  • Interval: Data, která mají být předána v argumentu intervalu, jsou typu řetězce, což znamená, že tento argument může obsahovat jakékoli platné hodnoty. Interval může být rok, měsíc, čtvrtletí, den, týden, hodina, minuta, sekunda.
  • Datum: Hodnota data, kterou je třeba vyhodnotit.
  • firstdayofweek: Toto je volitelný parametr. Toto popisuje první den v týdnu, toto lze dokonce ignorovat. Pokud je tento parametr ignorován, bude automaticky považován neděle za první den v týdnu. Chcete-li to změnit, lze použít tento parametr. Tento argument se může skládat z vbUseSystem 0.

Použijte nastavení NLS API

vbSunday (výchozí), vbMonday, vbTuesday, vbWednesday, vbThursday vbFriday, vbSaturday.
  • firstweekofyear: Stejně jako horní parametr je toto také volitelný parametr. Toto popisuje první týden v roce. Tento parametr lze také ignorovat. Pokud je tento parametr ignorován, předpokládá se 1. leden jako první týden v roce. Pokud to chcete změnit, lze použít tento parametr.

    Tento argument se může skládat z následujících hodnot.

    vbUseSystem, vbFirstJan1, vbFirstFourDays, vbFirstFullWeek.

Po zadání všech parametrů vrátí funkce Datepart () číselnou hodnotu, jako je celé datum nebo rok nebo měsíc nebo čtvrtletí atd. Proto bude návratovým typem této funkce číselná hodnota.

Jak používat funkci DatePart ve VBA?

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

Příklad č. 1

Prvním příkladem je zobrazení úplného data a čtvrtletí daného měsíce.

Abychom toho dosáhli, musíme napsat nějaký kód v jazyce Visual Basic, pro tuto kartu Vývojář přejít a poté kliknout na Visual Basic a poté se otevře okno.

V tomto okně napište kód, jak je znázorněno níže.

Kód:

 Sub date_Datepart () Dim mydate As Variant mydate = # 12/25/2019 # MsgBox mydate MsgBox DatePart ("q", mydate) 'zobrazí čtvrtinu End Sub 

V tomto příkladu jsme použili funkci Datepart k zobrazení data a části data, která je čtvrtinou data. Zobrazí se, do kterého čtvrtletí roku je datum.

Pokud ladíme kód, datum se zobrazí jako úplné datum poprvé, když kód provede „Msgbox mydate“, protože náhodné datum je přiřazeno proměnné „mydate“.

Dále zobrazujeme, do kterého čtvrtletí roku dané datum spadá.

Pokud spustíte kód ručně nebo pomocí klávesové zkratky F5, zobrazí se po kliknutí na ok datum tak, jak je uvedeno. Dále se zobrazí čtvrtina data, kterou lze zobrazit na následujícím snímku obrazovky.

Podobně lze zobrazit také Čtvrtletí, pouze datum nebo měsíc nebo rok.

Příklad č. 2

V tomto příkladu zadám datum ručně v době běhu.

Kód:

Sub date1_datePart () Dim TodayDate As Date 'Deklarovat proměnné. Dim Msg TodayDate = InputBox ("Zadejte datum:") Msg = "Čtvrtletí:" & DatePart ("q", TodayDate) MsgBox Zpráva End Sub

Tady v tomto příkladu se snažíme získat datum ručně za běhu. Kód „TodayDate = InputBox („ Zadejte datum: “)“ tento řádek označuje, že datum lze zadat ručně,

Po ručním zadání data se zobrazí čtvrtina data v okně se zprávou. To lze zobrazit na níže uvedeném snímku obrazovky.

Jelikož je červnový měsíc ve 2. čtvrtletí, zobrazí se 2. čtvrtletí, jak je znázorněno na výše uvedeném snímku obrazovky.

Příklad č. 3

V tomto příkladu budou všechny hodnoty vyplněny v buňkách.

Kód:

 Private Sub Workbook_Open () Dim DummyDate As Date DummyDate = ActiveSheet.Cells (2, 2) ActiveSheet.Cells (2, 2) .Value = Day (DummyDate) ActiveSheet.Cells (3, 2) .Value = Hour (DummyDate) ActiveSheet .Cells (4, 2) .Value = Minute (DummyDate) ActiveSheet.Cells (5, 2) .Value = Month (DummyDate) ActiveSheet.Cells (6, 2) .Value = Weekday (DummyDate) End Sub 

Data jsou vyplněna do buněk v listu aplikace Excel, pro které je kód zapsán jako aktivní list. Buňky. Tímto kódem může být aktuální datum rok měsíc nebo datum může být vloženo do daných buněk.

Například na výše uvedeném snímku obrazovky

Den se vloží do buněk (2, 2) listu aplikace Excel. Proto je kód zapsán jako „ActiveSheet.Cells (2, 2) .Value = Day (DummyDate)“.

Spusťte kód pomocí klávesy F5 nebo ručně a výsledek by byl uveden níže.

Ve výchozím nastavení bere dnešní datum a zobrazuje se jako 30 v (2,6) buňce.

Stejně tak u všech ostatních údajů lze také vyplnit.

Použití funkce DatePart

  • Funkci DatePart lze použít k zobrazení části data, jak naznačuje název, tj. Pokud je třeba zobrazit pouze den, měsíc nebo rok data, lze tuto funkci použít.
  • Tato funkce také odděluje datum, měsíc a rok od konkrétního data.
  • Použitím této funkce se nejen oddělí datum, ale můžeme také získat čtvrtletí, den, hodinu, minutu a sekundu.

Věci k zapamatování

  • Tuto funkci lze použít pouze jako funkci VBA. V normální aplikaci Excel to nelze použít.
  • Data, která jsou v této funkci uvedena jako hodnota, mohou být uvedena v jakémkoli formátu, jako je formát mm-dd-rrrr nebo formát DD-MM-RRRR atd.
  • Tato funkce odděluje všechny hodnoty samostatně, jako je datum, měsíc, rok nebo čas, také hodinu, minutu a sekundu.
  • To je organizováno v části Funkce data a času ve VBA aplikace Microsoft Excel.