Obsah
Pokud hledáte některé z nejjednodušších způsobů, jak používat VBA IsNumeric pak jste na správném místě. Tuto funkci obvykle používáme v položce VBA testovat, zda je výraz číslo, nebo ne, a v závislosti na výrazu vrátí. TRUE pokud je výraz číslo, jinak FALSE .
Stáhnout pracovní sešit
Funkce VBA IsNumeric.xlsmFunkce VBA IsNumeric: Syntaxe & Argumenty
⦿ Syntaxe
IsNumeric (Výraz)
⦿ Argumenty
Argument | Povinné/volitelné | Vysvětlení |
---|---|---|
Výraz | Požadované | Jedná se o variantu, u které je třeba zkontrolovat, zda se jedná o číslo, nebo ne. |
⦿ Návratová hodnota
Vstup | Návratová hodnota |
---|---|
Číslo | TRUE |
Není číslo; řetězec | FALSE |
⦿ Verze
Na stránkách Funkce ISNUMERIC byl zaveden v Excel 2000 a je k dispozici pro všechny následující verze.
9 příkladů použití funkce IsNumeric ve VBA
V tomto článku se pokusíme ukázat použití systému VBA IsNumeric s několika náhodnými příklady spolu s několika příklady včetně následující tabulky.
Použili jsme Microsoft Excel 365 zde, můžete použít jakoukoli jinou verzi podle toho, jak vám to vyhovuje.
1. Kontrola VBA IsNumeric s některými náhodnými hodnotami
Zde si vyzkoušíme několik náhodných řetězců pomocí příkazu VBA ISNUMERIC , pokud jsou hodnoty číselné nebo ne.
Krok-01 :
➤ Přejít na Vývojář Karta>> Visual Basic Možnost.
Poté se Editor jazyka Visual Basic se otevře.
➤ Přejít na Vložte Karta>> Modul Možnost.
Poté se Modul bude vytvořen.
Krok-02 :
➤ Napište následující kód
Sub checkvalue1() Dim x As Variant x = InputBox("Zadejte libovolnou hodnotu") MsgBox IsNumeric(x) End Sub
Zde jsme prohlásili. x jako Varianta a uloží vstupní hodnotu. ISNUMERIC vrátí TRUE pokud je vstupní hodnota číselná, jinak vrátí hodnotu FALSE . Výstup nalezneme v okně pro zprávy ( MsgBox ).
➤ Tisk F5 .
Pak se zobrazí následující vstupní pole a pokud zapíšete hodnotu 100 a stiskněte OK ,
zobrazí se okno se zprávou "True" .
Pro zápis řetězce Kočka a stisknutím OK v zadávacím poli,
Zobrazuje se okno se zprávou "False" .
Další informace: Jak používat funkci VBA Randomize v aplikaci Excel (5 příkladů)
2. Použití příkazu VBA IsNumeric s příkazem IF-THEN-ELSE
V této části budeme používat Funkce ISNUMERIC s IF-THEN-ELSE příkaz v VBA kód pro definici číselných a nečíselných hodnot.
Kroky :
➤ Sledovat Krok-01 oddílu 1 .
➤ Zapište následující kód
Sub checkvalue2() Dim x As Variant x = InputBox("Zadejte libovolnou hodnotu") If IsNumeric(x) = True Then MsgBox "Zadaná hodnota je číselná" Else MsgBox "Zadaná hodnota není číselná" End If End Sub
Zde jsme prohlásili. x jako Varianta a uloží vstupní hodnotu. ISNUMERIC vrátí TRUE , IF vrátí zprávu s textem "Zadaná hodnota je číselná" a pokud ISNUMERIC vrací FALSE , pak IF vrátí zprávu s vysvětlením "Zadaná hodnota není číselná" .
➤ Tisk F5 .
Pak se zobrazí následující vstupní pole a pokud zapíšete hodnotu 200 a stiskněte OK ,
zobrazí se okno se zprávou "Zadaná hodnota je číselná" .
Pro zápis řetězce Kočka a stisknutím OK v zadávacím poli,
Zobrazuje se okno se zprávou "Zadaná hodnota není číselná" .
Přečtěte si více: Příkazy VBA If - Then - Else v aplikaci Excel (4 příklady)
3. Vytvoření opačného výsledku pomocí funkce IsNumeric
Zde vytvoříme VBA kód, který nám poskytne opačný výsledek než kód Funkce ISNUMERIC , což znamená, že pro číselné hodnoty dostaneme FALSE a pro nečíselné hodnoty vrátí hodnotu TRUE .
Kroky :
➤ Sledovat Krok-01 oddílu 1 .
➤ Zapište následující kód
Sub checkvalue3() Dim x As Variant x = InputBox("Zadejte libovolnou hodnotu") If IsNumeric(x) = True Then MsgBox ("FALSE") Else MsgBox ("TRUE") End If End Sub
Zde jsme prohlásili. x jako Varianta a uloží vstupní hodnotu. ISNUMERIC vrátí TRUE , IF vrátí zprávu s textem "FALSE" a pokud ISNUMERIC vrací FALSE , pak IF vrátí zprávu s vysvětlením "TRUE" .
➤ Tisk F5 .
Pak se zobrazí následující vstupní pole a pokud zapíšete hodnotu 25 a stiskněte OK ,
zobrazí se okno se zprávou "FALSE" .
Pro zápis řetězce Aljaška a stisknutím OK v zadávacím poli,
Zobrazuje se okno se zprávou "TRUE" .
Související obsah: Formátovací funkce VBA v aplikaci Excel (8 použití s příklady)
4. Zjišťování, zda jsou prázdná místa číselná, nebo ne
Můžete to snadno zkontrolovat pomocí VBA kód, zda jsou prázdná místa číselná nebo ne.
Kroky :
➤ Sledovat Krok-01 oddílu 1 .
➤ Zapište následující kód
Sub checkvalue4() Dim x As Variant x = " " MsgBox IsNumeric(x) End Sub
Zde jsme prohlásili. x jako Varianta a uloží Prázdné stránky ... ISNUMERIC vrátí TRUE pokud Prázdné stránky je číselný, jinak se vrátí FALSE .
➤ Tisk F5 .
Poté se zobrazí okno se zprávou. "False" což znamená. prázdná místa nejsou číselná .
Přečtěte si více: Vzorec aplikace Excel pro generování náhodného čísla (5 příkladů)
5. Kontrola, zda jsou data číselná nebo ne
V této části použijeme náhodné datum a zkontrolujeme, zda je datum číselné, nebo ne.
Kroky :
➤ Sledovat Krok-01 oddílu 1 .
➤ Zapište následující kód
Sub checkvalue5() Dim x As Variant x = "02/02/2022 " MsgBox IsNumeric(x) End Sub
Zde jsme prohlásili. x jako Varianta a uloží datum. ISNUMERIC vrátí TRUE pokud je datum číselné, jinak se vrátí hodnota FALSE .
➤ Tisk F5 .
Poté se zobrazí okno se zprávou. "False" což znamená. data nejsou číselná .
Můžeme také zkusit s Funkce DATESERIAL vytvořit data a zkontrolovat, zda jsou číselná, nebo ne.
➤ Zadejte následující kód
Sub checkvalue5a() Dim x As Variant x = DateSerial(2022, 2, 2) MsgBox IsNumeric(x) End Sub
Zde jsme prohlásili. x jako Varianta a uloží datum vytvořené pomocí Funkce DATESERIAL ... ISNUMERIC vrátí TRUE pokud je datum číselné, jinak se vrátí hodnota FALSE .
➤ Tisk F5 .
Na oplátku se zobrazí okno se zprávou. "False" i tentokrát.
Přečtěte si více: Funkce VBA Date (12 použití maker s příklady)
Podobné čtení:
- Jak používat funkci MsgBox v aplikaci Excel VBA (kompletní návod)
- Použití funkce VBA Environ (4 příklady)
- Jak používat VBA a funkce v aplikaci Excel (4 příklady)
- Použití příkazu případu VBA (13 příkladů)
- Jak používat funkci Log v Excelu VBA (5 vhodných příkladů)
6. Kontrola, zda je čas číselný, nebo ne
V této části zjistíme, zda jsou časy číselné, nebo ne, pomocí příkazu Funkce ISNUMERIC .
Kroky :
➤ Sledovat Krok-01 oddílu 1 .
➤ Zapište následující kód
Sub checkvalue6() Dim x As Variant x = "09:30:00 AM" MsgBox IsNumeric(x) End Sub
Zde jsme prohlásili. x jako Varianta a uloží čas. Pak ISNUMERIC vrátí TRUE pokud je čas číselný, jinak se vrátí hodnota FALSE .
➤ Tisk F5 .
Poté se zobrazí okno se zprávou. "False" což znamená. časy nejsou číselné .
Můžete také vyzkoušet Funkce TIMESERIAL vytvořit data a zkontrolovat, zda jsou číselná, nebo ne.
➤ Zadejte následující kód
Sub checkvalue6a() Dim x As Variant x = TimeSerial(9, 30, 0) MsgBox IsNumeric(x) End Sub
Zde jsme prohlásili. x jako Varianta a uloží čas vytvořený pomocí Funkce TIMESERIAL ... ISNUMERIC vrátí TRUE pokud je čas číselný, jinak se vrátí hodnota FALSE .
➤ Tisk F5 .
Poté se zobrazí okno se zprávou "False" i tentokrát.
Opět si můžeme vyzkoušet odkazování na časovou hodnotu v buňce listu.
➤ Zadejte následující kód
Sub checkvalue6b() Dim x As Variant x = range("B2").value MsgBox IsNumeric(x) End Sub
Zde jsme prohlásili. x jako Varianta a uloží čas, který se nachází v oblasti B2 buňka. Pak ISNUMERIC vrátí TRUE pokud je čas číselný, jinak se vrátí hodnota FALSE .
➤ Tisk F5 .
Nakonec se zobrazí okno se zprávou "True" tentokrát.
Přečtěte si více: Jak používat VBA TimeSerial v aplikaci Excel (3 příklady)
7. Použití VBA IsNumeric pro rozsah hodnot
Zde zkontrolujeme, zda hodnoty parametrů Známky/stupně jsou číselné nebo nečíselné a jejich výsledky jsou ve sloupci Podívejte se na stránky . sloupec.
Kroky :
➤ Sledovat Krok-01 oddílu 1 .
➤ Zapište následující kód
Sub checkvalue7() Dim cell As Range For Each cell In Range("D5:D11") cell.Offset(0, 1) = IsNumeric(cell) Next cell End Sub
Buňku jsme deklarovali jako Range a použili jsme a PRO smyčka pro buňky rozsahu "D5:D11" a pro tyto buňky ISNUMERIC vrátí TRUE pokud je hodnota číselná, v opačném případě vrátí hodnotu FALSE a cell.Offset(0, 1) vrátí výstupní hodnoty v jednom sloupci později do vstupního sloupce.
➤ Tisk F5 .
Poté budeme mít TRUE pro číselné hodnoty nebo Marks a FALSE pro nečíselné hodnoty nebo Třídy .
Přečtěte si více: Jak používat funkci VBA Val v aplikaci Excel (7 příkladů)
8. Vytvoření funkce pro testování rozsahu hodnot
V této části vytvoříme funkci s příznakem VBA ISNUMERIC a zkontrolujte, zda hodnoty Známky/stupně sloupce jsou číselné nebo nečíselné.
Krok-01 :
➤ Sledovat Krok-01 oddílu 1 .
➤ Zapište a uložte následující kód
Function IsNumericTest(value As Variant) As Boolean If IsNumeric(value) Then IsNumericTest = True Else IsNumericTest = False End If End Function
Tento kód vytvoří funkci s názvem IsNumericTest .
Krok-02 :
➤ Vraťte se na hlavní list a do buňky zadejte následující vzorec E5
=IsNumericTest(D5)
D5 je Známky/stupně studenta a IsNumericTest vrátí PRAVDA/NEPRAVDA v závislosti na hodnotě.
➤ Tisk ENTER a přetáhněte dolů Plnicí rukojeť nástroj.
Nakonec budeme mít TRUE pro číselné hodnoty nebo Marks a FALSE pro nečíselné hodnoty nebo Třídy .
Související obsah: Jak používat funkci VBA DIR v aplikaci Excel (7 příkladů)
9. Počítání nečíselných hodnot pomocí funkce VBA IsNumeric
Chceme počítat nečíselné hodnoty nebo stupně z Známky/stupně a k tomu zde použijeme sloupec VBA ISNUMERIC a mít celkový počet nečíselných hodnot, které máme v položce Hrabě sloupec.
Krok-01 :
➤ Sledovat Krok-01 oddílu 1 .
➤ Zapište a uložte následující kód
Function countnonnumeric(value As range) As Long Dim cell As range Dim count As Long For Each cell In value.Cells If Not IsNumeric(cell.value) Then count = count + 1 End If Next countnonnumeric = count End Function
Tento kód vytvoří funkci s názvem početčíselný .
Pokud hodnota buňky nebude číselná, pak se počítat se zvýší o 1 .
Krok-02 :
➤ Vraťte se na hlavní list a zadejte následující vzorec
=countnonnumeric(D5:D11)
D5:D11 je rozsah Známky/stupně studentů a početčíselný vrátí celkový počet nečíselných známek.
➤ Tisk ENTER
Nakonec získáte hodnotu 3 což znamená, že máte 3 Známky v Známky/stupně sloupec.
Přečtěte si více: Jak vrátit hodnotu ve funkci VBA (pole i jiné hodnoty)
IsNumeric vs ISNUMBER
- ISNUMERIC zkontroluje, zda lze hodnotu převést na číslo a ISNUMBER kontroluje, zda je hodnota uložena jako číslo.
- Existují určité rozdíly mezi Funkce VBA ISNUMERIC a aplikace Excel Funkce ISNUMBER a my jsme se pokusili ukázat rozdíly níže pomocí našeho dříve vytvořeného Funkce IsNumericTest a vestavěný program Excel Funkce ISNUMBER .
Praktická část
Pro samostatné cvičení jsme připravili Cvičení sekce jako níže v listu s názvem Cvičení . Udělejte to prosím sami.
Závěr
V tomto článku jsme se snažili popsat některé způsoby, jak používat VBA ISNUMERIC Doufám, že pro vás bude užitečná. Pokud máte nějaké návrhy nebo dotazy, neváhejte se o ně podělit v sekci komentářů.