Sisällysluettelo
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.xlsmVBA 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.