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 ExcelPří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.