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 řetězcový typ, 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. Popisuje první den v týdnu. To 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ě tak horní parametr, toto je 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, můžete 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ů funkce datepart () vrátí čí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?

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áře Goto 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 některé čá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. To lze zobrazit na níže uvedené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

The dates are filled in the cells in the excel sheet, for that the code is written as Active Sheet.cells. By this code, the date which is present maybe a year, month, or date can be inserted into the given cells.

For example, in the above screenshot,

The day is to be inserted in the cells ( 2, 2) of the excel sheet. Hence the code is written as “ ActiveSheet.Cells(2, 2).Value = Day(DummyDate) “ .

Run the code using the F5 key or manually, and the result would be as shown below.

It is, by default taking date today, and it is displaying as 30 in (2,6) cell.

Likewise, for all the other data also it can be filled.

Usage of DatePart Function

  • DatePart function can be used to display the part of the date as the name indicates, i.e., if only day or month or year of the date needs to be displayed, then this function can be used.
  • 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ěluje datum. 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.

Zajímavé články...