See õpetus õpetab teile, kuidas seda kasutada IsNumeric ja IsNumber funktsioonid VBA -s, et kontrollida, kas väärtused on numbrid.
IsNumeric on sisseehitatud VBA-funktsioon, samas kui IsNumber on Exceli funktsioon, mida saab kutsuda VBA-koodist.
Erinevus IsNumber ja IsNumeric vahel VBA -s
IsNumber kontrollib, kas väärtus on salvestatud numbrina. IsNumeric kontrollib, kas väärtust saab teisendada arvuks.
Näiteks kui edastate parameetrina tühja lahtri, tagastab IsNumber väärtuse FALSE ja IsNumeric väärtuse TRUE. Samuti, kui möödute lahtrist, mis sisaldab tekstina salvestatud numbrit, tagastab IsNumber FALSE ja IsNumeric TRUE.
Peate pöörama tähelepanu mõlema funktsiooni nendele piirangutele ja otsustama, millistel juhtudel on parem kasutada IsNumeric ja millal IsNumber.
IsNumericu kasutamine VBA -s
IsNumeric on funktsioon VBA, mis kontrollib, kas väärtus on numbriline ja tagastab selle tulemusel loogilise tõe või vale.
Funktsioon võib võtta muutuja või lahtri väärtuse.
Siin on näide lahtri väärtuse võtmisest:
12345 | If IsNumeric (Sheet1.Range ("A1"). Value) = True thenMsgBox "A1 väärtus on numbriline"MuiduMsgBox "A1 väärtus ei ole numbriline"Lõpp Kui |
Selles näites kontrollime IsNumeric abil, kas lahtri A1 väärtus on numbriline. See funktsioon tagastab vastava teate, sõltuvalt funktsiooni tulemusest.
See järgmine näide sooritab sama toimingu, välja arvatud lahtri väärtuse asemel muutujaga:
123456789 | Dim n kui Variantn = Sheet1.Range ("A1"). VäärtusKui IsNumeric (n) = True, siisMsgBox "A1 väärtus on numbriline"MuiduMsgBox "A1 väärtus ei ole numbriline"Lõpp Kui |
IsNumberi kasutamine VBA -s
IsNumber on Exceli funktsioon, mida saab kasutada VBA -s. Selle väljund on peaaegu sarnane IsNumericuga. Vaatame funktsiooni IsNumber näidet:
123456789 | If Application.WorksheetFunction.IsNumber (Sheet1.Range ("A1"). Value) = True SiisMsgBox "A1 väärtus on numbriline"MuiduMsgBox "A1 väärtus ei ole numbriline"Lõpp Kui |
Nagu koodist näha, on erinevus funktsiooni kutsumisel süntaksis. Kuna IsNumber on Exceli funktsioon, peame selle panema Application.WorksheetFunction enne funktsioonikõnet.