Villuhönnuðir fyrir Excel fjölva

Villumeðferðaraðilar leyfa þér að tilgreina hvað gerist þegar villa kemur upp á meðan Excel makrókóði þinn keyrir. Villumeðferðaraðilar eru línur svipaðar eftirfarandi:

Við Villa GoTo MyError

Án villumeðferðaraðila munu allar villur sem eiga sér stað í kóðanum þínum hvetja Excel til að virkja minna en gagnleg villuboð sem venjulega munu ekki segja skýrt frá því sem gerðist. Hins vegar, með aðstoð villumeðferðaraðila, geturðu valið að hunsa villuna eða loka kóðanum með þokkabót með eigin skilaboðum til notandans.

Það eru þrjár gerðir af On Error staðhæfingum:

  • Við Villa GoTo SomeLabel: Kóðinn hoppar á tilgreint merki.

  • Á Villa Resume Next: Villan er hunsuð og kóðinn heldur áfram.

  • Á Villa GoTo 0: VBA endurstillir sig í eðlilega villuskoðunarhegðun .

Við Villa GoTo SomeLabel

Stundum þýðir villa í kóðanum þínum að þú þarft að hætta ferlinu með þokka og gefa notendum þínum skýr skilaboð. Í þessum aðstæðum geturðu notað On Error GoTo yfirlýsinguna til að segja Excel að hoppa í ákveðna línu af kóða.

Til dæmis, í eftirfarandi litla kóða, segir þú Excel að deila gildinu í reit A1 með gildinu í reit A2 og setur síðan svarið í reit A3. Auðvelt. Hvað gæti farið úrskeiðis?

Sub Macro1()
Range("A3").Value = Range("A1").Value / Range("A2").Value
End Sub

Eins og það kemur í ljós getur tvennt stórt farið úrskeiðis. Ef reit A2 inniheldur 0 færðu deilingu með 0 villu. Ef reit A2 inniheldur ótalnagildi færðu villu í tegund misræmis.

Til að forðast viðbjóðsleg villuskilaboð geturðu sagt Excel að við villu viltu að keyrsla kóðans hoppa á merkið sem heitir MyExit.

Í eftirfarandi kóða er MyExit merkinu fylgt eftir með skilaboðum til notandans sem gefur vinsamleg ráð í stað ógeðslegra villuboða. Athugaðu einnig Exit Sub línuna á undan MyExit merkimiðanum, sem tryggir að kóðinn hættir einfaldlega ef engin villa kemur upp:

Sub Macro1()
Við Villa í GoTo MyExit
Range("A3").Value = Range("A1").Value / Range("A2").Value
Hætta undir
MyExit:
MsgBox "Vinsamlegast notaðu gild númer sem ekki eru núll"
End Sub

Á Villa Resume Next

Stundum vilt þú að Excel hunsi villu og haldi einfaldlega áfram að keyra kóðann. Í þessum aðstæðum geturðu notað yfirlýsinguna Við villuskráningu næst.

Til dæmis, eftirfarandi kóða er ætlað að eyða skrá sem heitir GhostFile.exe úr C:Temp skránni. Eftir að skránni hefur verið eytt, segir fallegur skilaboðakassi notandanum að skráin sé horfin:

Sub Macro1()
Drepa "C:TempGhostFile.exe"
MsgBox "Skrá hefur verið eytt."
End Sub

Kóðinn virkar frábærlega ef það er örugglega skrá til að eyða. En ef af einhverjum ástæðum skráin sem heitir GhostFile.exe er ekki til í C:Temp drifinu, þá er villa hent.

Í þessu tilfelli er þér alveg sama þótt skráin sé ekki þar vegna þess að þú ætlaðir samt að eyða henni. Svo þú getur einfaldlega hunsað villuna og haldið áfram með kóðann.

Með því að nota On Error Resume Next yfirlýsinguna keyrir kóðinn sinn gang hvort sem markskráin er til eða ekki:

Sub Macro1()
Á Villa Resume Next
Drepa "C:TempGhostFile.exe"
MsgBox "Skrá hefur verið eytt."
End Sub

Við Villa GoTo 0

Þegar tilteknar villusetningar eru notaðar gæti verið nauðsynlegt að endurstilla villuskoðunarhegðun VBA. Til að skilja hvað þetta þýðir skaltu skoða næsta dæmi.

Hér viltu fyrst eyða skrá sem heitir GhostFile.exe úr C:Temp skránni. Til að forðast villur sem gætu stafað af því að markskráin er ekki til, notarðu yfirlýsinguna On Error Resume Next. Eftir það reynirðu að gera grunsamlega stærðfræði með því að deila 100/Mike:

Sub Macro1()
Á Villa Resume Next
Drepa "C:TempGhostFile.exe"
Range("A3"). Gildi = 100 / "Mike"
End Sub

Að keyra þennan kóða ætti að búa til villu vegna óljósrar stærðfræði, en það gerir það ekki. Hvers vegna? Vegna þess að síðasta leiðbeiningin sem þú gafst kóðanum var On Error Resume Next. Allar villur sem koma upp eftir þá línu eru í raun hunsaðar.

Til að ráða bót á þessu vandamáli geturðu notað On Error GoTo 0 yfirlýsinguna til að halda áfram eðlilegri villuskoðun:

Sub Macro1()
Á Villa Resume Next
Drepa "C:TempGhostFile.exe"
Við Villa GoTo 0
Range("A3"). Gildi = 100 / "Mike"
End Sub

Þessi kóði mun hunsa villur þar til On Error GoTo 0 yfirlýsingin. Eftir þá yfirlýsingu fer kóðinn aftur í venjulega villuskoðun og kallar fram væntanlega villu sem stafar af loðnu stærðfræðinni.

Leave a Comment

Námundun tölur í Excel 2007 með ROUND, ROUNDUP og ROUNDDOWN

Námundun tölur í Excel 2007 með ROUND, ROUNDUP og ROUNDDOWN

Fyrir þá sem vilja læra um aðferðir eins og <strong>ROUND</strong>, <strong>ROUNDUP</strong> og <strong>ROUNDDOWN</strong> í Excel 2007, skoðaðu þessa skref-fyrir-skref leiðbeiningu um hvernig á að rúnna tölur á réttan hátt.

Hvernig á að koma í veg fyrir að Microsoft Word opni skrár í skrifvarinn ham á Windows

Hvernig á að koma í veg fyrir að Microsoft Word opni skrár í skrifvarinn ham á Windows

Hvernig á að koma í veg fyrir að Microsoft Word opni skrár í skrifvarandi ham á Windows. Microsoft Word opnar skrár í skrifvarandi ham, sem gerir það ómögulegt að breyta þeim? Ekki hafa áhyggjur, aðferðirnar eru hér að neðan

Hvernig á að laga ranga prentun á Microsoft Word skjölum

Hvernig á að laga ranga prentun á Microsoft Word skjölum

Hvernig á að laga villur við prentun á röngum Microsoft Word skjölum Villur við prentun Word skjala með breyttu letri, sóðalegar málsgreinar, texta sem vantar eða glatað efni eru nokkuð algengar. Hins vegar ekki

Eyddu penna- og auðkennisteikningum á PowerPoint-skyggnunum þínum

Eyddu penna- og auðkennisteikningum á PowerPoint-skyggnunum þínum

Ef þú hefur notað pennann eða hápunktarann ​​til að teikna á PowerPoint glærurnar þínar meðan á kynningu stendur geturðu vistað teikningarnar fyrir næstu kynningu eða eytt þeim út svo næst þegar þú sýnir þær byrjarðu á hreinum PowerPoint glærum. Fylgdu þessum leiðbeiningum til að eyða penna- og auðkenningarteikningum: Að eyða línum einni á […]

Innihald stílasafns í SharePoint 2010

Innihald stílasafns í SharePoint 2010

Stílsafnið inniheldur CSS skrár, Extensible Stylesheet Language (XSL) skrár og myndir sem notaðar eru af fyrirfram skilgreindum aðalsíðum, síðuuppsetningum og stjórntækjum í SharePoint 2010. Til að finna CSS skrár í stílasafni útgáfusíðunnar: Veldu Site Actions→ View Allt efni á síðunni. Innihald síðunnar birtist. Style bókasafnið er staðsett í […]

Snið tölur í þúsundum og milljónum í Excel skýrslum

Snið tölur í þúsundum og milljónum í Excel skýrslum

Ekki yfirgnæfa áhorfendur með stórkostlegum tölum. Í Microsoft Excel geturðu bætt læsileika mælaborða og skýrslna með því að forsníða tölurnar þínar þannig að þær birtast í þúsundum eða milljónum.

Hvernig á að deila og fylgja SharePoint síðum

Hvernig á að deila og fylgja SharePoint síðum

Lærðu hvernig á að nota SharePoints samfélagsnetverkfæri sem gera einstaklingum og hópum kleift að eiga samskipti, vinna saman, deila og tengjast.

Hvernig á að umbreyta dagsetningum í Julian snið í Excel

Hvernig á að umbreyta dagsetningum í Julian snið í Excel

Julian dagsetningar eru oft notaðar í framleiðsluumhverfi sem tímastimpill og fljótleg tilvísun fyrir lotunúmer. Þessi tegund af dagsetningarkóðun gerir söluaðilum, neytendum og þjónustuaðilum kleift að bera kennsl á hvenær vara var framleidd og þar með aldur vörunnar. Julian dagsetningar eru einnig notaðar í forritun, hernum og stjörnufræði. Mismunandi […]

Hvernig á að búa til Access Web App

Hvernig á að búa til Access Web App

Þú getur búið til vefforrit í Access 2016. Svo hvað er vefforrit eiginlega? Jæja, vefurinn þýðir að hann er á netinu og app er bara stytting fyrir „umsókn“. Sérsniðið vefforrit er gagnagrunnsforrit á netinu sem hægt er að nálgast úr skýinu með vafra. Þú smíðar og viðheldur vefforritinu í skrifborðsútgáfunni […]

Quick Launch Bar í SharePoint 2010

Quick Launch Bar í SharePoint 2010

Flestar síður í SharePoint 2010 sýna lista yfir flakktengla á flýtiræsingarstikunni vinstra megin á síðunni. Flýtiræsingarstikan sýnir tengla á innihaldsefni vefsvæða eins og lista, bókasöfn, síður og útgáfusíður. Flýtiræsingarstikan inniheldur tvo mjög mikilvæga tengla: Tengill á allt efni vefsvæðis: […]