VBA on virhe Kuinka käyttää ISERROR-toimintoa VBA: ssa? (Esimerkkejä)

Excel VBA ISERROR -toiminto

VBA IsError -funktion nimi itsessään tiivistää toiminnallisuuden. Tämä toiminto tunnistaa, onko toimittamamme arvo virhearvo vai ei. Jos toimitettu arvo tai alueen viitearvo on virhearvo, tulokseksi saadaan TOSI, jos arvo ei ole virhearvo, tulokseksi tulee FALSE.

Syntaksi

Lauseke ei ole muuta kuin testattavaa arvoa tai solun viitearvoa tai kaava-lauseketta. Ja kuten näette, tulos on "looginen".

Esimerkkejä

Voit ladata tämän VBA ISERROR Excel -mallin täältä - VBA ISERROR Excel -malli

Esimerkki 1

Näemme yksinkertaisen esimerkin siitä, onko arvo virhe vai ei. Esimerkiksi solussa A1 on alle arvon.

Testataan, onko tämä arvo virhearvo vai ei.

  • Käynnistä makrokoodi.

Koodi:

 Sub IsError_Example1 () End Sub 

  • Ilmoita muuttuja solun A1 arvon tallentamiseksi.

Koodi:

 Sub IsError_Example1 () Dim ExpValue vaihtoehtona End Sub 

  • Määritä nyt solun A1 arvo tälle muuttujalle VBA: ssa.

Koodi:

 Sub IsError_Example1 () Dim ExpValue Variant -arvona ExpValue = Alue ("A1"). Arvo End Sub 

  • Testaa nyt onko muuttujan arvo virhe vai ei.

Koodi:

 Sub IsError_Example1 () Dim ExpValue Variant -arvona ExpValue = Alue ("A1"). Arvo IsError (ExpValue) Loppu Sub 

  • Liitä tämä tulos VBA: n viestiruutuun.

Koodi:

 Sub IsError_Example1 () Dim ExpValue Variant -arvona ExpValue = Alue ("A1"). Arvo MsgBox IsError (ExpValue) End Sub 

Ok, suoritetaan koodi ja katsotaan ISERROR-toiminnon tulos.

Tulos on TOSI, koska solun A1 arvo on # DIV / 0! mikä on jakovirhe.

Nyt muutamme solun A1 arvoksi “Hello”.

Suorita nyt koodi ja katso tulos.

Joten tulos on nyt EPÄTOSI, koska solun A1 arvo ei ole virhearvo.

Joten ensin on ymmärrettävä, mitkä ovat virhetyypit ja miksi ne esiintyvät Excel-laskentataulukossa. Alla on yksityiskohtaiset virhearvot ja selitykset.

  • # DIV / 0: Tämä virhe tapahtuu pääasiassa siksi, että kun yritämme jakaa luvun nollalla. Tämä virhe nimeltään "Jako nollalla"
  • # N / A: Kun yrität hakea tietoja toisesta taulukosta ja jos arvoa ei löydy, saamme tämän virheen ja tätä virhettä kutsutaan "Ei saatavilla".
  • #NAME ?: Jos excel ei pysty tunnistamaan kaavaa tai nimeä, saamme tämän virheen.
  • #NULL !: Kun määrität välilyönnin soluviittausten väliin pilkun sijaan.
  • #NUM !: Tietoihin annettu numeroarvo ei ole kelvollinen.
  • #ARVO !: Kun viittaat solun arvoihin matemaattisia laskelmia varten, ja jos numeromuoto ei ole oikea, saamme tämän virheen.
  • #REF !: Jos solu on kaava, siinä on soluviittauksia, ja jos kyseinen solu poistetaan, saamme tämän viitevirheen.

Esimerkki 2

Katso nyt alla olevaa tietojoukkoa.

Meidän on tunnistettava virheet tässä luettelossa ja tallennettava tulos joko TOSI tai EPÄTOSI seuraavaan sarakkeeseen.

Koska meidän on testattava useampi kuin yksi solu, meidän on sisällytettävä tämä silmukoihin, alla oleva koodi tunnistaa virhearvot.

Koodi:

 Sub IsError_Example2 () Dim k kokonaislukuna k = 2 - 12 solua (k, 4). Arvo = IsError (solut (k, 3). Arvo) Seuraava k End Sub 

Kun suoritat tämän koodin, saamme alla olevan tuloksen sarakkeessa 4.

Aina missä TOSI on, arvo on virhearvo.

Muistettavaa

  • ISERROR palauttaa Boolen -tyyppisen tuloksen eli TOSI tai EPÄTOSI.
  • Se on saatavana sekä laskentataulukko- että VBA-funktiona.
  • Se on hyödyllinen osana suuria VBA-hankkeita.
  • Se tunnistaa vain ennalta määritetyt virhearvot (Lue virhetyyppi).

$config[zx-auto] not found$config[zx-overlay] not found