VBA „IsError“ Kaip naudoti ISERROR funkciją VBA? (Pavyzdžiai)

„Excel VBA ISERROR“ funkcija

Pats funkcijos pavadinimas „ VBA IsError “ apibendrina funkcionalumą. Ši funkcija nustatys, ar mūsų pateikta vertė yra klaidos vertė, ar ne. Jei pateikiama vertė arba diapazono atskaitos vertė yra klaidos reikšmė, rezultatą gausime kaip „TRUE“, jei reikšmė nėra klaidos reikšmė, rezultatą gausime kaip „FALSE“.

Sintaksė

Išraiška yra ne kas kita, o vertė, kurią bandome, arba langelio pamatinė vertė arba formulės išraiška. Kaip matote, rezultatas bus „Boolean“.

Pavyzdžiai

1 pavyzdys

Pamatysime paprastą pavyzdį, norėdami sužinoti, ar reikšmė yra klaida, ar ne. Pavyzdžiui, langelyje A1 yra mažesnė vertė.

Mes išbandysime, ar ši vertė yra klaidos vertė, ar ne.

  • Paleiskite makrokodą.

Kodas:

Sub IsError_Example1 () Pabaiga Sub
  • Paskelbkite kintamąjį, kad būtų išsaugota langelio A1 reikšmė.

Kodas:

Sub IsError_Example1 () Dim ExpValue As Variant End Sub
  • Dabar priskirkite A1 langelio vertę šiam kintamajam VBA.

Kodas:

Sub IsError_Example1 () Dim ExpValue As Variant ExpValue = Range ("A1"). Reikšmė End Sub
  • Dabar patikrinkite, ar šio kintamojo vertė yra klaida, ar ne.

Kodas:

Sub IsError_Example1 () Dim ExpValue As Variant ExpValue = Range ("A1"). Value IsError (ExpValue) End Sub
  • Pridėkite šį rezultatą VBA pranešimų laukelyje.

Kodas:

Sub IsError_Example1 () Dim ExpValue as Variant ExpValue = Range ("A1"). Reikšmė MsgBox IsError (ExpValue) Pabaiga Sub

Gerai, paleiskime kodą ir pamatysime funkcijos ISERROR rezultatą.

Rezultatas yra TIKRA, nes A1 langelio reikšmė yra # DIV / 0! kuri yra dalijimo klaida.

Dabar langelio A1 vertę pakeisime į „Labas“.

Dabar paleiskite kodą ir pamatykite rezultatą.

Taigi rezultatas dabar yra NETIESA, nes A1 langelio reikšmė nėra klaidos reikšmė.

Taigi, pirmiausia turime suprasti, kokie yra klaidų tipai ir kodėl jie atsiranda „Excel“ darbalapyje. Žemiau pateikiamos išsamios klaidų vertės ir paaiškinimai.

  • # DIV / 0: Ši klaida įvyksta daugiausia dėl to, kad kai bandome skaičių padalyti iš nulio. Ši klaida vadinama „Padalijimas pagal nulį“.
  • # N / A: kai bandote gauti duomenis iš skirtingų lentelių ir jei nerasta vertės, gausime šią klaidą ir ši klaida vadinama „Nėra“.
  • #NAME ?: Jei „Excel“ negali atpažinti formulės ar pavadinimo, gausime šią klaidą.
  • #NULL !: Kai tarp langelių nuorodų nurodote tarpo ženklą, o ne kablelį.
  • #NUM !: Duomenims pateikta skaitinė vertė nėra tinkama.
  • #VALUE !: Kai nurodysite langelių reikšmes matematiniams skaičiavimams, ir jei skaičių formatas nėra teisingas, gausime šią klaidą.
  • #REF !: Jei langelis yra formulė, jame yra langelių nuorodų, o jei ši nuoroda bus ištrinta, gausime šią nuorodos klaidą.

2 pavyzdys

Dabar pažvelkite į toliau pateiktą duomenų rinkinį.

Turime nustatyti šio sąrašo klaidų reikšmes ir kitame stulpelyje išsaugoti rezultatą TRUE arba FALSE.

Kadangi turime išbandyti daugiau nei vieną langelį, turime tai įtraukti į kilpas; žemiau pateiktas kodas nustatys klaidų vertes.

Kodas:

Sub IsError_Example2 () Dim k kaip sveikoji k = 2–12 ląstelių (k, 4). Vertė = IsError (ląstelės (k, 3). Vertė) Kitas k End Sub

Kai paleisite šį kodą, 4 stulpelyje gausime žemiau pateiktą rezultatą.

Kur yra TIESA, ta reikšmė yra klaidos reikšmė.

Ką reikia atsiminti

  • ISERROR pateikia Būlio tipo rezultatą, ty TRUE arba FALSE.
  • Tai galima naudoti kaip darbalapio funkciją, taip pat kaip VBA funkciją.
  • Tai naudinga kaip didelių VBA projektų dalis.
  • Jis atpažįsta tik iš anksto nustatytas klaidų reikšmes (skaityti klaidos tipą).

Įdomios straipsniai...