Ako používať funkciu IsNumeric vo VBA (9 príkladov)

  • Zdieľajte To
Hugh West

Ak hľadáte niektoré z najjednoduchších spôsobov používania VBA IsNumeric potom ste na správnom mieste. Túto funkciu zvyčajne používame v VBA na testovanie, či je výraz číslo alebo nie, a v závislosti od výrazu vráti TRUE ak je výraz číslo, inak FALSE .

Stiahnite si pracovný zošit

VBA IsNumeric Function.xlsm

Funkcia VBA IsNumeric: Syntax & Argumenty

⦿ Syntax

IsNumeric (Výraz)

⦿ Argumenty

Argument Povinné/voliteľné Vysvetlenie
Vyjadrenie Požadované Ide o variant, pri ktorom sa kontroluje, či ide o číslo alebo nie.

⦿ Návratová hodnota

Vstup Návratová hodnota
Číslo TRUE
Nie je číslo; reťazec FALSE

⦿ Verzia

Stránka Funkcia ISNUMERIC bol zavedený v Excel 2000 a je k dispozícii pre všetky nasledujúce verzie.

9 príkladov použitia funkcie IsNumeric vo VBA

V tomto článku sa pokúsime ukázať použitie VBA IsNumeric s niekoľkými náhodnými príkladmi spolu s niekoľkými príkladmi vrátane nasledujúcej tabuľky.

Použili sme Microsoft Excel 365 verziu, môžete použiť aj iné verzie podľa vlastného uváženia.

1. Kontrola VBA IsNumeric s niektorými náhodnými hodnotami

Tu otestujeme niekoľko náhodných reťazcov pomocou VBA ISNUMERIC , či sú hodnoty číselné alebo nie.

Krok-01 :

➤ Prejsť na Vývojár Karta>> Visual Basic Možnosť.

Potom sa Editor jazyka Visual Basic sa otvorí.

➤ Prejsť na Vložte Karta>> Modul Možnosť.

Potom sa Modul sa vytvorí.

Krok-02 :

➤ Napíšte nasledujúci kód

 Sub checkvalue1() Dim x As Variant x = InputBox("Uveďte akúkoľvek hodnotu") MsgBox IsNumeric(x) End Sub 

Tu sme vyhlásili. x ako Variant a uloží vstupnú hodnotu. ISNUMERIC vráti TRUE ak je vstupná hodnota číselná, inak vráti FALSE . Výstup nájdeme v okne správy ( MsgBox ).

➤ Tlač F5 .

Potom sa zobrazí nasledujúce vstupné pole a ak napíšete hodnotu 100 a stlačte OK ,

zobrazí sa okno so správou "True" .

Na zápis reťazca Mačka a stlačením OK do vstupného poľa,

Zobrazí sa okno so správou "False" .

Prečítajte si viac: Ako používať funkciu VBA Randomize v programe Excel (5 príkladov)

2. Použitie príkazu VBA IsNumeric s príkazom IF-THEN-ELSE

V tejto časti budeme používať Funkcia ISNUMERIC s IF-THEN-ELSE príkaz v VBA kód na definovanie číselných a nečíselných hodnôt.

Kroky :

➤ sledovať Krok-01 sekcie 1 .

➤ Zapíšte si nasledujúci kód

 Sub checkvalue2() Dim x As Variant x = InputBox("Zadajte ľubovoľnú hodnotu") If IsNumeric(x) = True Then MsgBox "Zadaná hodnota je číselná" Else MsgBox "Zadaná hodnota nie je číselná" End If End Sub 

Tu sme vyhlásili. x ako Variant a uloží vstupnú hodnotu. ISNUMERIC vráti TRUE , IF vráti správu s textom "Zadaná hodnota je číselná" a ak ISNUMERIC vráti FALSE , potom IF vráti správu s vysvetlením "Zadaná hodnota nie je číselná" .

➤ Tlač F5 .

Potom sa zobrazí nasledujúce vstupné pole a ak napíšete hodnotu 200 a stlačte OK ,

zobrazí sa okno so správou "Zadaná hodnota je číselná" .

Na zápis reťazca Mačka a stlačením OK do vstupného poľa,

Zobrazí sa okno so správou "Zadaná hodnota nie je číselná" .

Prečítajte si viac: Príkaz VBA If - Then - Else v programe Excel (4 príklady)

3. Vytvorenie opačného výsledku pomocou funkcie IsNumeric

Tu vytvoríme VBA kód, ktorý nám poskytne opačný výsledok Funkcia ISNUMERIC , čo znamená, že pre číselné hodnoty dostaneme FALSE , a v prípade nečíselných hodnôt vráti TRUE .

Kroky :

➤ sledovať Krok-01 sekcie 1 .

➤ Zapíšte si nasledujúci kód

 Sub checkvalue3() Dim x As Variant x = InputBox("Uveďte akúkoľvek hodnotu") If IsNumeric(x) = True Then MsgBox ("FALSE") Else MsgBox ("TRUE") End If End Sub 

Tu sme vyhlásili. x ako Variant a uloží vstupnú hodnotu. ISNUMERIC vráti TRUE , IF vráti správu s textom "FALSE" a ak ISNUMERIC vráti FALSE , potom IF vráti správu s vysvetlením "TRUE" .

➤ Tlač F5 .

Potom sa zobrazí nasledujúce vstupné pole a ak napíšete hodnotu 25 a stlačte OK ,

zobrazí sa okno so správou "FALSE" .

Na zápis reťazca Aljaška a stlačením OK do vstupného poľa,

Zobrazí sa okno so správou "TRUE" .

Súvisiaci obsah: Funkcia formátu VBA v programe Excel (8 použití s príkladmi)

4. Kontrola, či je prázdne miesto číselné alebo nie

Môžete to ľahko skontrolovať pomocou VBA kód, či sú prázdne miesta číselné alebo nie.

Kroky :

➤ sledovať Krok-01 sekcie 1 .

➤ Zapíšte si nasledujúci kód

 Sub checkvalue4() Dim x As Variant x = " " MsgBox IsNumeric(x) End Sub 

Tu sme vyhlásili. x ako Variant a uloží Prázdne stránky ... ISNUMERIC vráti TRUE ak Prázdne stránky je číselná, inak sa vráti FALSE .

➤ Tlač F5 .

Potom sa zobrazí okno so správou "False" čo znamená. prázdne miesta nie sú číselné .

Prečítajte si viac: Vzorec programu Excel na generovanie náhodného čísla (5 príkladov)

5. Kontrola, či sú dátumy číselné alebo nie

V tejto časti použijeme náhodný dátum a skontrolujeme, či je dátum číselný alebo nie.

Kroky :

➤ sledovať Krok-01 sekcie 1 .

➤ Zapíšte si nasledujúci kód

 Sub checkvalue5() Dim x As Variant x = "02/02/2022 " MsgBox IsNumeric(x) End Sub 

Tu sme vyhlásili. x ako Variant a uloží dátum. Potom ISNUMERIC vráti TRUE ak je dátum číselný, inak sa vráti FALSE .

➤ Tlač F5 .

Potom sa zobrazí okno so správou "False" čo znamená. dátumy nie sú číselné .

Môžeme tiež vyskúšať s Funkcia DATESERIAL vytvoriť dátumy a zistiť, či sú číselné alebo nie.

➤ Zadajte nasledujúci kód

 Sub checkvalue5a() Dim x As Variant x = DateSerial(2022, 2, 2) MsgBox IsNumeric(x) End Sub 

Tu sme vyhlásili. x ako Variant a uloží dátum vytvorený pomocou Funkcia DATESERIAL ... ISNUMERIC vráti TRUE ak je dátum číselný, inak sa vráti FALSE .

➤ Tlač F5 .

Na oplátku sa zobrazí okno so správou "False" aj tentoraz.

Prečítajte si viac: Funkcia VBA Date (12 použití makier s príkladmi)

Podobné čítanie:

  • Ako používať funkciu MsgBox v programe Excel VBA (kompletný návod)
  • Používanie funkcie VBA Environ (4 príklady)
  • Ako používať VBA a funkcie v programe Excel (4 príklady)
  • Použitie príkazu prípadu VBA (13 príkladov)
  • Ako používať funkciu Log v programe Excel VBA (5 vhodných príkladov)

6. Kontrola, či je čas číselný alebo nie

V tejto časti skontrolujeme, či sú časy číselné alebo nie, pomocou príkazu Funkcia ISNUMERIC .

Kroky :

➤ sledovať Krok-01 sekcie 1 .

➤ Zapíšte si nasledujúci kód

 Sub checkvalue6() Dim x As Variant x = "09:30:00 AM" MsgBox IsNumeric(x) End Sub 

Tu sme vyhlásili. x ako Variant a uloží čas. Potom ISNUMERIC vráti TRUE ak je čas číselný, inak vráti FALSE .

➤ Tlač F5 .

Potom sa zobrazí okno so správou "False" čo znamená. časy nie sú číselné .

Môžete to tiež skúsiť pomocou Funkcia TIMESERIAL vytvoriť dátumy a zistiť, či sú číselné alebo nie.

➤ Zadajte nasledujúci kód

 Sub checkvalue6a() Dim x As Variant x = TimeSerial(9, 30, 0) MsgBox IsNumeric(x) End Sub 

Tu sme vyhlásili. x ako Variant a uloží čas vytvorený pomocou Funkcia TIMESERIAL ... ISNUMERIC vráti TRUE ak je čas číselný, inak vráti FALSE .

➤ Tlač F5 .

Potom sa zobrazí okno so správou "False" aj tentoraz.

Opäť si môžeme vyskúšať odkazovanie na časovú hodnotu v bunke listu.

➤ Zadajte nasledujúci kód

 Sub checkvalue6b() Dim x As Variant x = range("B2").value MsgBox IsNumeric(x) End Sub 

Tu sme vyhlásili. x ako Variant a uloží čas, ktorý je v B2 bunka. Potom ISNUMERIC vráti TRUE ak je čas číselný, inak vráti FALSE .

➤ Tlač F5 .

Nakoniec sa zobrazí okno so správou "True" tentoraz.

Prečítajte si viac: Ako používať VBA TimeSerial v programe Excel (3 príklady)

7. Používanie VBA IsNumeric pre rozsah hodnôt

Tu skontrolujeme, či hodnoty Známky/stupne sú číselné alebo nečíselné a majú výsledky v Skontrolujte stránku . stĺpec.

Kroky :

➤ sledovať Krok-01 sekcie 1 .

➤ Zapíšte si nasledujúci 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 

Bunku sme deklarovali ako Range a použili sme PRE slučka pre bunky rozsahu "D5:D11" a pre tieto bunky sa ISNUMERIC vráti TRUE ak je hodnota číselná, inak vráti FALSE a cell.Offset(0, 1) vráti výstupné hodnoty v jednom stĺpci neskôr do vstupného stĺpca.

➤ Tlač F5 .

Potom budeme mať TRUE pre číselné hodnoty alebo Značky a FALSE pre nečíselné hodnoty alebo Triedy .

Prečítajte si viac: Ako používať funkciu VBA Val v programe Excel (7 príkladov)

8. Vytvorenie funkcie na testovanie rozsahu hodnôt

V tejto časti vytvoríme funkciu s príponou VBA ISNUMERIC a skontrolujte, či hodnoty Známky/stupne stĺpca sú číselné alebo nečíselné.

Krok-01 :

➤ sledovať Krok-01 sekcie 1 .

➤ Zapíšte a uložte nasledujúci kód

 Funkcia IsNumericTest(value As Variant) As Boolean If IsNumeric(value) Then IsNumericTest = True Else IsNumericTest = False End If End Function 

Tento kód vytvorí funkciu s názvom IsNumericTest .

Krok-02 :

➤ Vráťte sa na hlavný hárok a do bunky zadajte nasledujúci vzorec E5

=IsNumericTest(D5)

D5 je Známky/stupne študenta a IsNumericTest vráti PRAVDA/NEPRAVDA v závislosti od hodnoty.

➤ Tlač VSTÚPIŤ a potiahnite nadol Rukoväť náplne nástroj.

Nakoniec budeme mať TRUE pre číselné hodnoty alebo Značky a FALSE pre nečíselné hodnoty alebo Triedy .

Súvisiaci obsah: Ako používať funkciu VBA DIR v programe Excel (7 príkladov)

9. Počítanie nečíselných hodnôt pomocou funkcie VBA IsNumeric

Chceme spočítať nečíselné hodnoty alebo stupne Známky/stupne a na tento účel použijeme stĺpec VBA ISNUMERIC a celkový počet nečíselných hodnôt, ktoré máme v Počítajte stĺpec.

Krok-01 :

➤ sledovať Krok-01 sekcie 1 .

➤ Zapíšte a uložte nasledujúci 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 vytvorí funkciu s názvom počítaniečíselné .

Ak hodnota bunky nebude číselná hodnota, potom počítať sa zvýši o 1 .

Krok-02 :

➤ Vráťte sa na hlavný hárok a zadajte nasledujúci vzorec

=countnonnumeric(D5:D11)

D5:D11 je rozsah Známky/stupne študentov a počítaniečíselné vráti celkový počet nečíselných známok.

➤ Tlač VSTÚPIŤ

Nakoniec získate hodnotu 3 čo znamená, že máte 3 Známky v Známky/stupne stĺpec.

Prečítajte si viac: Ako vrátiť hodnotu vo funkcii VBA (hodnoty v poli aj iné hodnoty)

IsNumeric vs ISNUMBER

  • ISNUMERIC skontroluje, či sa hodnota dá previesť na číslo a ISNUMBER kontroluje, či je hodnota uložená ako číslo.
  • Existujú určité rozdiely medzi Funkcia VBA ISNUMERIC a Excel Funkcia ISNUMBER a my sme sa pokúsili ukázať rozdiely nižšie pomocou našej predtým vytvorenej Funkcia IsNumericTest a vstavaný program Excel Funkcia ISNUMBER .

Praktická časť

Na precvičovanie sme vám poskytli Prax sekciu ako nižšie v hárku s názvom Cvičenie . Prosím, urobte to sami.

Záver

V tomto článku sme sa pokúsili pokryť niektoré spôsoby použitia VBA ISNUMERIC Dúfam, že vám to bude užitočné. Ak máte nejaké návrhy alebo otázky, neváhajte sa o ne podeliť v sekcii komentárov.

Hugh West je veľmi skúsený tréner a analytik Excelu s viac ako 10-ročnými skúsenosťami v tomto odvetví. Má bakalársky titul v odbore účtovníctvo a financie a magisterský titul v odbore Business Administration. Hugh má vášeň pre vyučovanie a vyvinul jedinečný vyučovací prístup, ktorý sa dá ľahko sledovať a pochopiť. Jeho odborné znalosti Excelu pomohli tisíckam študentov a profesionálov na celom svete zlepšiť svoje zručnosti a vyniknúť vo svojej kariére. Hugh sa prostredníctvom svojho blogu delí o svoje znalosti so svetom a ponúka bezplatné výukové programy Excelu a online školenia, ktoré jednotlivcom a firmám pomôžu naplno využiť ich potenciál.