VBA DateValue | Jak používat funkci DateValue v aplikaci Excel VBA?

Co je funkce VBA DateValue?

Funkce DateValue je vestavěná funkce v aplikaci Excel VBA v kategorii funkce Datum / čas. Funguje jako funkce VBA i funkce listu ve VBA. Tato funkce vrací sériové číslo nebo hodnotu Datumu poskytovaného ve formátu reprezentace řetězce a ignoruje informace o čase poskytnuté řetězcem Datum. V aplikaci Excel se používá dvěma různými způsoby. Tato funkce se používá jako vzorec listu zadávající do buňky listu. Používá se jako kód makra v aplikaci VBA, která jej zadává pomocí editoru jazyka Visual Basic přidruženého k aplikaci Microsoft Excel.

V tomto článku se budeme učit příklady VBA DATEVALUE a jak ji používat s jasným vysvětlením.

Vysvětlení funkce VBA Datevalue

Ve VBA používá DATEVALUE následující syntaxi.

Tato funkce používá pouze jeden argument nebo parametr

  • Datum : Je to datum vyjádřené ve formátu řetězce
  • Vrací: Tato funkce vrací hodnotu data, když je použita jako funkce VBA. Vrátí hodnotu data, když se použije jako funkce listu

Funkce VBA DateValue dokáže interpretovat data reprezentovaná v textovém formátu uvedeném v platném formátu Excel. Není možné vrátit hodnotu data, pokud řetězec obsahoval textovou reprezentaci dne v týdnu.

Mezi výhody funkce VBA DateValue patří extrakce hodnoty data z řetězce a převod data s časem na jediné datum. Můžeme jednoduše říci, že když je datum uvedeno s časem, tato funkce pouze hodnotu data vyhne hodnotě času.

Jak používat Excel VBA DATEVALUE?

Chcete-li použít funkci DateValue v aplikaci Excel, musíte nejprve otevřít editor VBA.

Chcete-li do něj přidat řádky programu VBA, je třeba do pracovního listu aplikace Excel umístit příkazové tlačítko. Chcete-li implementovat řádky programu, uživatel vyžaduje kliknout na příkazové tlačítko v listu aplikace Excel. Chcete-li mít platný výstup z programu, je platný vstup zadán argumentem. Například následující kód pomáhá při vytváření makra ke spuštění funkce DateValue k extrakci hodnoty data z textu ve VBA.

Program VBA: 

 Sub Datebutton () Dim myDate As Date myDate = DateValue („15. srpna 1991“) MsgBox Date (myDate) End Sub 

Výsledkem tohoto kódu je datum 15 z daného vstupu.

Příklady Excel VBA DATEVALUE

Níže jsou uvedeny příklady DateValue v aplikaci Excel VBA.

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

Příklad č. 1 - Získejte den, měsíc a rok z data

K vytvoření a spuštění programu ve VBA je dodrženo několik kroků. Mezi ně patří

Krok 1: Přejděte na kartu Vývojář, umístěte kurzor na buňku v listu aplikace Excel a klikněte na možnost „Vložit“ a vyberte „Příkazové tlačítko“ pod ovládacím prvkem ActiveX, jak je znázorněno na obrázku.

Přetáhněte tlačítko na požadované místo a v okně vlastností zadejte titulek jako Datebutton.

Krok 2: Poklepejte na tlačítko, které přesměruje na projekt VBA a zapíše kód mezi příkazové tlačítko Private Sub a end sub.

Tento kód by měl být vyvinut níže, aby získal datum, měsíc a rok.

Kód:

 Private Sub Datebutton1_Click () Dim Exampledate As Date Exampledate = DateValue ("April 19,2019") MsgBox Date MsgBox Year (Exampledate) MsgBox Month (Exampledate) End Sub 

V tomto kódu je Datebutton1_Click () název a exampledate jsou proměnné s datovým typem Date a Msgbox pro zobrazení výstupu.

Krok 3: Při vývoji kódu dojde k chybám nesouladu typu VBA a je třeba se o ně postarat.

Krok 4: V tomto kroku spusťte program kliknutím na možnost spuštění.

Nebo můžeme program zkontrolovat nebo odladit krok za krokem výběrem možnosti Krok do v nabídce Debug. Pokud je náš kód bez jakýchkoli chyb, zobrazí výstup.

Krok 5 : Když je program spuštěn, nejprve zobrazí okno se zprávou s datem uvedeným v textovém vstupu. Dále klikněte na OK, abyste znovu viděli hodnotu roku, klikněte na OK v okně se zprávou, abyste viděli hodnotu měsíce.

Poznámka: Tyto kroky je třeba přesně dodržet, abyste měli přesné výsledky.

Příklad č. 2 - Použití DatePart k získání různých částí data

Krok 1: Přejděte na kartu Vývojář aplikace Excel, umístěte kurzor na buňku v listu aplikace Excel a klikněte na možnost „Vložit“ a vyberte „Příkazové tlačítko“ pod ovládacím prvkem ActiveX, jak je znázorněno na obrázku.

Krok 2: Přetáhněte tlačítko a pod vlastnostmi uveďte titulek jako DatePart.

Poklepejte na toto tlačítko, přesměruje se na list editoru jazyka a zobrazí se následujícím způsobem.

Krok 3: Vytvořte kód pomocí DatePart s DateValue, jak je znázorněno na obrázku.

Kód:

 Soukromý subpartpart1_Click () Dim partdate As Variant partdate = DateValue ("15/8/1991") MsgBox partdate MsgBox Datepart ("rrrr", partdate) MsgBox Datepart ("dd", partdate) MsgBox Datepart ("mm", partdate) MsgBox Datepart ("q", partdate) End Sub 

V tomto programu je DatePart1 název makra a partDate je název argumentu s datovým typem 'varianta'. Pro zobrazení roku, data, měsíce a čtvrtiny se použije formát „rrrr“, „d“, „m“ a „q“. Pokud uděláme jakoukoli chybu ve formátu, zobrazí se následující chyba.

Krok 4: Po úspěšném odladění programu spusťte program kliknutím na tlačítko spuštění pomocí klávesové zkratky aplikace Excel F5.

Kód nejprve zobrazí celé datum, poté po kliknutí na každé OK v msgboxu zobrazí hodnotu roku po této hodnotě Datum, Hodnota měsíce, Hodnota čtvrtiny.

Co je třeba pamatovat na VBA DATEVALUE

Při používání funkce DateValue v aplikaci Excel VBA je třeba si pamatovat následující věci

  • Chyba doby běhu 13 se zprávou Neshoda typu se zobrazí, když datum poskytnuté funkci DateValue není možné převést na platné datum. Potřebujeme datum, je správný formát textu
  • Když se pokusíme získat jediné datum z argumentu řetězce s kódem 'datum msgbox (název argumentu)', zobrazí se chyba neshody typu.
  • Můžeme vidět výstup funkce DateValue bez otevření editoru VBA. To se provádí kliknutím na příkazové tlačítko a výběrem makra vytvořeného pro příslušný program
  • Když se k získání hodnot používá DatePart, měl by se dodržovat příslušný formát. Jinak vede „chybu běhu 5“ s hlášením nebo argumentem neplatné procedury zprávy.

$config[zx-auto] not found$config[zx-overlay] not found