VBA IsNumeric -funktion käyttäminen (9 esimerkkiä)

  • Jaa Tämä
Hugh West

Jos etsit joitakin helpoimpia tapoja hyödyntää VBA IsNumeric funktiota, niin olet oikeassa paikassa. Käytämme tätä funktiota yleensä kohdassa VBA testata, onko lauseke luku vai ei, ja lausekkeesta riippuen se palauttaa seuraavat tiedot TRUE jos lauseke on luku muuten FALSE .

Lataa työkirja

VBA IsNumeric-funktio.xlsm

VBA IsNumeric -funktio: Syntaksi & argumentit

⦿ Syntaksi

IsNumeric (lauseke)

⦿ Argumentit

Argumentti Vaadittava/Vapaaehtoinen Selitys
Ilmaisu Vaadittu Kyseessä on muunnos, josta on tarkistettava, onko se numero vai ei.

⦿ Paluuarvo

Tulo Paluuarvo
Numero TRUE
Ei numero; merkkijono FALSE

⦿ Versio

The ISNUMERIC-toiminto otettiin käyttöön Excel 2000 versiossa, ja se on käytettävissä kaikissa sen jälkeisissä versioissa.

9 esimerkkiä VBA IsNumeric-funktion käytöstä

Tässä artikkelissa yritämme esitellä, miten VBA IsNumeric joitakin satunnaisia esimerkkejä sekä joitakin esimerkkejä, kuten seuraava taulukko.

Olemme käyttäneet Microsoft Excel 365 versiota tässä, voit käyttää mitä tahansa muita versioita haluamasi mukaan.

1. VBA IsNumeric -ohjelman tarkistaminen satunnaisarvojen avulla

Tässä testataan joitakin satunnaisia merkkijonoja komennolla VBA ISNUMERIC , ovatko arvot numeerisia vai eivät.

Step-01 :

➤ Go to Kehittäjä Tab>> Visual Basic Vaihtoehto.

Sitten Visual Basic Editor avautuu.

➤ Go to Lisää Tab>> Moduuli Vaihtoehto.

Sen jälkeen Moduuli luodaan.

Step-02 :

➤ Kirjoita seuraava koodi

 Sub checkvalue1() Dim x As Variant x = InputBox("Anna jokin arvo") MsgBox IsNumeric(x) End Sub 

Tässä olemme ilmoittaneet x kuin Vaihtoehto ja se tallentaa syötetyn arvon. ISNUMERIC palauttaa TRUE jos syöttöarvo on numeerinen, muuten se palauttaa arvon FALSE Löydämme tulosteen viestiruudusta ( MsgBox ).

➤ Lehdistö F5 .

Sitten saat seuraavan syöttölaatikon ja jos kirjoitat arvoksi 100 ja paina OK ,

saat viestiruudun, jossa lukee "True" .

Merkkijonon kirjoittaminen Kissa ja painamalla OK syöttöruutuun,

Saamme viestiruudun, jossa lukee "False" .

Lue lisää: VBA:n satunnaistamisfunktion käyttö Excelissä (5 esimerkkiä)

2. VBA IsNumeric -ohjelman käyttäminen IF-THEN-ELSE-lausekkeen kanssa

Tässä jaksossa käytämme ISNUMERIC-toiminto kanssa IF-THEN-ELSE lauseke VBA koodi numeeristen ja ei-numeeristen arvojen määrittämiseksi.

Askeleet :

➤ Seuraa Step-01 jakson 1 .

➤ Kirjoita seuraava koodi

 Sub checkvalue2() Dim x As Variant x = InputBox("Anna mikä tahansa arvo") If IsNumeric(x) = True Then MsgBox "Annettu arvo on numeerinen" Else MsgBox "Annettu arvo ei ole numeerinen" End If End Sub 

Tässä olemme ilmoittaneet x kuin Vaihtoehto ja se tallentaa syötetyn arvon. Kun ISNUMERIC palauttaa TRUE , IF palauttaa viestin, jossa sanotaan "Annettu arvo on numeerinen" ja jos ISNUMERIC palauttaa FALSE , niin IF palauttaa viestin, jossa selitetään "Annettu arvo ei ole numeerinen" .

➤ Lehdistö F5 .

Sitten saat seuraavan syöttölaatikon ja jos kirjoitat arvoksi 200 ja paina OK ,

saat viestiruudun, jossa lukee "Annettu arvo on numeerinen" .

Merkkijonon kirjoittaminen Kissa ja painamalla OK syöttöruutuun,

Saamme viestiruudun, jossa lukee "Annettu arvo ei ole numeerinen" .

Lue lisää: VBA If - Then - Else Statement Excelissä (4 esimerkkiä)

3. Vastakkaisen tuloksen luominen IsNumeric-funktiolla

Tässä luomme VBA koodia, joka antaa meille käänteisen tuloksen kuin ISNUMERIC-toiminto , mikä tarkoittaa, että numeeristen arvojen osalta saamme tulokseksi FALSE ja muiden kuin numeeristen arvojen osalta se palauttaa arvon TRUE .

Askeleet :

➤ Seuraa Step-01 jakson 1 .

➤ Kirjoita seuraava koodi

 Sub checkvalue3() Dim x As Variant x = InputBox("Anna jokin arvo") If IsNumeric(x) = True Then MsgBox ("FALSE") Else MsgBox ("TRUE") End If End Sub 

Tässä olemme ilmoittaneet x kuin Vaihtoehto ja se tallentaa syötetyn arvon. Kun ISNUMERIC palauttaa TRUE , IF palauttaa viestin, jossa sanotaan "FALSE" ja jos ISNUMERIC palauttaa FALSE , niin IF palauttaa viestin, jossa selitetään "TODELLA" .

➤ Lehdistö F5 .

Sitten saat seuraavan syöttölaatikon ja jos kirjoitat arvoksi 25 ja paina OK ,

saat viestiruudun, jossa lukee "FALSE" .

Merkkijonon kirjoittaminen Alaska ja painamalla OK syöttöruutuun,

Saamme viestiruudun, jossa lukee "TODELLA" .

Aiheeseen liittyvä sisältö: VBA-muotoilutoiminto Excelissä (8 käyttöä esimerkkeineen)

4. Tarkistetaan, ovatko aihiot numeerisia vai eivät.

Voit tarkistaa sen helposti VBA koodi, ovatko tyhjät kohdat numeerisia vai eivät.

Askeleet :

➤ Seuraa Step-01 jakson 1 .

➤ Kirjoita seuraava koodi

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

Tässä olemme ilmoittaneet x kuin Vaihtoehto ja se tallentaa Tyhjä . sitten ISNUMERIC palauttaa TRUE jos Tyhjä on numeerinen, muuten se palauttaa FALSE .

➤ Lehdistö F5 .

Tämän jälkeen saat viestiruudun, jossa lukee seuraavaa. "False" mikä tarkoittaa Aihiot eivät ole numeerisia .

Lue lisää: Excel-kaava satunnaisluvun luomiseksi (5 esimerkkiä)

5. Päivämäärien tarkistaminen, ovatko päivämäärät numeerisia vai eivät.

Tässä osassa käytämme satunnaista päivämäärää ja tarkistamme, onko päivämäärä numeerinen vai ei.

Askeleet :

➤ Seuraa Step-01 jakson 1 .

➤ Kirjoita seuraava koodi

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

Tässä olemme ilmoittaneet x kuin Vaihtoehto ja se tallentaa päivämäärän. Sitten ISNUMERIC palauttaa TRUE jos päivämäärä on numeerinen, muuten se palauttaa arvon FALSE .

➤ Lehdistö F5 .

Tämän jälkeen saat viestiruudun, jossa lukee seuraavaa. "False" mikä tarkoittaa päivämäärät eivät ole numeerisia .

Voimme myös kokeilla DATESERIAL-toiminto luoda päivämääriä ja tarkistaa, onko se numeerinen vai ei.

➤ Kirjoita seuraava koodi

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

Tässä olemme ilmoittaneet x kuin Vaihtoehto ja se tallentaa päivämäärän, jonka on luonut DATESERIAL-toiminto . sitten ISNUMERIC palauttaa TRUE jos päivämäärä on numeerinen, muuten se palauttaa arvon FALSE .

➤ Lehdistö F5 .

Vastineeksi saat viestikentän, jossa lukee "False" myös tällä kertaa.

Lue lisää: VBA Date Function (12 makrojen käyttöä esimerkkeineen)

Samanlaisia lukemia:

  • Kuinka käyttää MsgBox-funktiota Excel VBA: ssa (täydellinen ohje)
  • VBA:n Environ-funktion käyttäminen (4 esimerkkiä)
  • VBA: n ja toiminnon käyttäminen Excelissä (4 esimerkkiä)
  • Käytä VBA-tapausselostetta (13 esimerkkiä)
  • Kuinka käyttää lokifunktiota Excel VBA: ssa (5 sopivaa esimerkkiä)

6. Tarkistetaan, onko aika numeerinen vai ei.

Tässä osiossa tarkistamme, ovatko ajat numeerisia vai eivät, käyttämällä komentoa ISNUMERIC-toiminto .

Askeleet :

➤ Seuraa Step-01 jakson 1 .

➤ Kirjoita seuraava koodi

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

Tässä olemme ilmoittaneet x kuin Vaihtoehto ja se tallentaa ajan. Sitten ISNUMERIC palauttaa TRUE jos kellonaika on numeerinen, muuten se palauttaa arvon FALSE .

➤ Lehdistö F5 .

Tämän jälkeen saat viestiruudun, jossa lukee seuraavaa "False" mikä tarkoittaa ajat eivät ole numeerisia .

Voit myös kokeilla TIMESERIAL-toiminto luoda päivämääriä ja tarkistaa, onko se numeerinen vai ei.

➤ Kirjoita seuraava koodi

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

Tässä olemme ilmoittaneet x kuin Vaihtoehto ja se tallentaa ajan, joka on luotu TIMESERIAL-toiminto . sitten ISNUMERIC palauttaa TRUE jos kellonaika on numeerinen, muuten se palauttaa arvon FALSE .

➤ Lehdistö F5 .

Tämän jälkeen saat viestiruudun, jossa lukee "False" myös tällä kertaa.

Voimme jälleen kokeilla viittaamista aika-arvoon arkin solussa.

➤ Kirjoita seuraava koodi

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

Tässä olemme ilmoittaneet x kuin Vaihtoehto ja se tallentaa ajan, joka on kohdassa B2 solu. ISNUMERIC palauttaa TRUE jos kellonaika on numeerinen, muuten se palauttaa arvon FALSE .

➤ Lehdistö F5 .

Lopuksi saat viestiruudun, jossa lukee "True" tällä kertaa.

Lue lisää: VBA TimeSerialin käyttö Excelissä (3 esimerkkiä)

7. VBA:n IsNumeric-toiminnon käyttäminen arvoalueelle

Tässä tarkistetaan, onko arvot arvojen Merkinnät/arvosanat sarakkeessa ovat numeerisia tai ei-numeerisia, ja tulokset ovat sarakkeessa Tarkista sarake.

Askeleet :

➤ Seuraa Step-01 jakson 1 .

➤ Kirjoita seuraava koodi

 Sub checkvalue7() Dim cell As Range For Each cell In Range("D5:D11") cell.Offset(0, 1) = IsNumeric(cell) Next cell End Sub 

Olemme ilmoittaneet solun Range-luokaksi ja käyttäneet a FOR silmukka alueen soluille "D5:D11" ja näiden solujen osalta ISNUMERIC palauttaa TRUE jos arvo on numeerinen, muuten se palauttaa arvon FALSE ja cell.Offset(0, 1) palauttaa lähtöarvot yhdessä sarakkeessa myöhemmin syöttösarakkeeseen.

➤ Lehdistö F5 .

Sen jälkeen meillä on TRUE numeerisia arvoja varten tai Merkit ja FALSE muiden kuin numeeristen arvojen osalta tai Palkkaluokat .

Lue lisää: VBA-val-toiminnon käyttäminen Excelissä (7 esimerkkiä)

8. Funktion luominen arvoalueen testaamista varten

Tässä osiossa luodaan funktio, jonka nimi on VBA ISNUMERIC ja tarkista, ovatko arvot Merkinnät/arvosanat sarakkeessa ovat numeerisia tai ei-numeerisia.

Step-01 :

➤ Seuraa Step-01 jakson 1 .

➤ Kirjoita ja tallenna seuraava koodi.

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

Tämä koodi luo funktion nimeltä IsNumericTest .

Step-02 :

➤ Palaa pääarkille ja kirjoita seuraava kaava soluun seuraavasti E5

=IsNumericTest(D5)

D5 on Merkinnät/arvosanat opiskelijan ja IsNumericTest palauttaa TOTTA/VÄÄRIN arvosta riippuen.

➤ Lehdistö ENTER ja vedä alas Täyttökahva työkalu.

Lopuksi meillä on TRUE numeerisia arvoja varten tai Merkit ja FALSE muiden kuin numeeristen arvojen osalta tai Palkkaluokat .

Aiheeseen liittyvä sisältö: VBA DIR -funktion käyttäminen Excelissä (7 esimerkkiä)

9. Muiden kuin numeeristen arvojen laskeminen VBA IsNumeric -funktiolla

Haluamme laskea muut kuin numeeriset arvot tai arvosanat, jotka ovat Merkinnät/arvosanat sarakkeessa, ja tähän käytämme tässä sarakkeessa saraketta VBA ISNUMERIC ja meillä on kokonaislukumäärä ei-numeerisia arvoja, joita meillä on vuonna Count sarake.

Step-01 :

➤ Seuraa Step-01 jakson 1 .

➤ Kirjoita ja tallenna seuraava koodi.

 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 

Tämä koodi luo funktion nimeltä countnonnumeric .

Kun solun arvo ei ole numeerinen arvo, niin sitten laske kasvaa 1 .

Step-02 :

➤ Palaa pääarkille ja kirjoita seuraava kaava

=countnonnumeric(D5:D11)

D5:D11 on alue, jolla Merkinnät/arvosanat opiskelijoiden ja countnonnumeric palauttaa ei-numeeristen arvosanojen kokonaismäärän.

➤ Lehdistö ENTER

Lopuksi saat arvon 3 mikä tarkoittaa, että sinulla on 3 Arvosanat Merkinnät/arvosanat sarake.

Lue lisää: Kuinka palauttaa arvo VBA-funktiossa (sekä array- että muut kuin array-arvot)?

IsNumeric vs ISNUMBER

  • ISNUMERIC tarkistaa, voidaanko arvo muuntaa numeroksi ja ISNUMBER tarkistaa, onko arvo tallennettu numerona.
  • Seuraavassa on joitakin eroja VBA ISNUMERIC-funktio ja Excel ISNUMBER-toiminto ja olemme yrittäneet näyttää erot alla käyttämällä aiemmin luotua IsNumericTest-funktio ja sisäänrakennettu Excel ISNUMBER-toiminto .

Harjoitusosio

Jotta voit harjoitella itse, olemme toimittaneet Harjoitus osiossa alla olevan kaltaisesti arkissa nimeltä Harjoitus Tee se itse.

Päätelmä

Tässä artikkelissa yritimme käsitellä joitakin tapoja käyttää VBA ISNUMERIC Jos sinulla on ehdotuksia tai kysymyksiä, voit jakaa ne kommenttiosioon.

Hugh West on erittäin kokenut Excel-kouluttaja ja analyytikko, jolla on yli 10 vuoden kokemus alalta. Hän on koulutukseltaan laskentatoimen ja rahoituksen kandidaatti sekä kauppatieteiden maisteri. Hughilla on intohimo opettamiseen, ja hän on kehittänyt ainutlaatuisen opetusmenetelmän, jota on helppo seurata ja ymmärtää. Hänen asiantuntemuksensa Excelistä on auttanut tuhansia opiskelijoita ja ammattilaisia ​​maailmanlaajuisesti parantamaan taitojaan ja menestymään urallaan. Blogissaan Hugh jakaa tietämyksensä maailman kanssa tarjoamalla ilmaisia ​​Excel-opetusohjelmia ja verkkokoulutusta auttaakseen yksilöitä ja yrityksiä saavuttamaan täyden potentiaalinsa.