VBA GoTo paziņojums - Kā lietot GoTo Statement VBA?

Satura rādītājs

Excel VBA GoTo paziņojums

VBA GoTo paziņojums tiek izmantots, ja, izpildot kodu, rodas kļūda, nevis tiek parādīta kļūda, lai atsāktu nākamo koda rindu, ignorējot kļūdas ziņojumu. Ir divu veidu GOTO paziņojumi: viens ir atlasīt jebkuru darblapas diapazonu norādītajā darbgrāmatā, bet otrs ir kļūdu apstrādātājs.

Lai novērstu paredzamās kļūdas VBA, mums ir funkcija ar nosaukumu “GOTO”. Šajā rakstā mēs redzēsim abu veidu GoTo paziņojumus.

2 veidi, kā izmantot GoTo paziņojumu VBA kodā

# 1 - pieteikums. GoTo metode

Ja vēlaties pāriet uz konkrēto darbgrāmatu vai konkrētu darblapu visās atvērtajās darbgrāmatās, mēs varam izmantot metodi Application.GoTo.

Apskatīsim Application.GoTo sintaksi

  • (Atsauce): Tas nav nekas cits kā norādīta šūnas atsauce. Ja atsauce nav norādīta pēc noklusējuma, tā novirzīs jūs uz pēdējo izmantoto šūnu diapazonu.
  • (Ritināt): Šis loģiskais apgalvojums ir PATIESA vai PATIESA. Ja vērtība ir PATIESA, tā ritinās pa logu. Ja vērtība ir FALSE, tā netiks ritināta pa logu.
Piemērs

Ja vēlaties doties uz noteiktu šūnu konkrētajā darblapā, mēs varam izmantot metodi Goto. Man ir 3 loksnes ar nosaukumu Jan, Feb un Mar.

Ja es vēlos doties uz Jan lapas C5 šūnu, es izmantošu zemāk esošo kodu kopu.

1. darbība: sāciet Excel makro nosaukumu.

Kods:

Sub GoTo_Example1 () Beigas Sub

2. darbība: sāciet metodi “ Application.GoTo

Kods:

Apakš GoTo_Example1 ()

Pieteikums. Pāriet

Beigu apakšnodaļa

3. solis: Atsauces argumentā mums jānorāda darblapas nosaukums, un šajā darblapā mums jāpiemin konkrētā šūna.

Kods:

Sub GoTo_Example1 () Application.Goto Reference: = Darblapas ("Jan"). Diapazons ("C5") Beigas Sub

4. darbība. Ritiniet kā TRUE.

Kods:

Sub GoTo_Example1 () Application.Goto Reference: = darblapas ("Jan"). Diapazons ("C5"), ritiniet: = True End Sub

5. solis: Tagad palaidiet šo kodu, izmantojot taustiņu F5, vai arī varat arī palaist šo kodu manuāli, tas jūs aizvedīs uz norādīto lapu un norādīto šūnu.

Tagad es mainīšu ritināšanas argumentu uz FALSE un redzēšu izmaiņas, ar kurām tas saskarsies.

Sub GoTo_Example1 () Application.Goto Reference: = darblapas ("Jan"). Diapazons ("C5"), ritiniet: = False End Sub

Ja vēlaties doties uz konkrētu darbgrāmatu, pirms darbgrāmatas nosaukuma jāpiemin arī darbgrāmatas nosaukums.

Sub GoTo_Example1 () Application.Goto Reference: = Darbgrāmatas ("Book1.xlsx"). Darblapas ("Jan"). Diapazons ("C5"), ritiniet: = False End Sub

# 2 - Kļūdu apstrādātāja metode

Kad noteiktā koda rindā rodas kļūda, tad VBA pārtrauc pārējā koda izpildi un parāda kļūdas ziņojumu.

Piemēram, apskatiet zemāk esošo koda rindu.

Sub GoTo_Example2 () Sheets ("April"). Dzēst Sheets.Add End Sub

Iepriekš minētais kods saka, ka aprīlī jāizdzēš lapa un jāpievieno jauna lapa. Aktīvajā darbgrāmatā, ja ir kāds lapas nosaukums ar aprīli, tas tiks izdzēsts, vai arī tas parādīs zemāk esošo kļūdas ziņojumu dialoglodziņu.

Kad palaidu šo kodu, manā darbgrāmatā nebija lapas ar nosaukumu Aprīlis, tāpēc VBA kods nevarēja atrast lapas nosaukumu un izmeta kļūdu. Dažreiz mums šī kļūda ir jāignorē bieži, ja nav lapas nosaukuma Aprīlis, tad mums jāturpina citas koda rindas.

Lai novērstu šo kļūdu, mēs varam izmantot GoTo metodi kā kļūdu apstrādātāju.

Tagad es modificēšu kodu, jo On kļūda pāriet uz nākamo rindu.

Sub GoTo_Example2 () Kļūdā GoTo NextLine Sheets ("Aprīlis"). Dzēst NextLine: Sheets.Add End Sub

Ja jūs to palaidīsit, tā pievienos jauno lapu, kaut arī nav lapas nosaukuma Aprīlis.

Paziņojums “On Error GoTo NextLine” saprot, ka, ja rodas kāda kļūda, tas pāriet uz nākamo rindu, un nākamajā rindā VBA kodam ir jāpievieno jauna lapa.

Atceramās lietas

  • Ja vēlaties pāriet uz nākamo rindu, kad rodas kļūda, varat izmantot arī paziņojumu On Error Resume Next VBA.
  • Lai pārietu uz nākamo, jums jābūt pārliecinātam, ka konkrētajā koda rindiņā ir paredzēta kļūda.
  • Ja svarīgā koda rindiņa tiek izlaista ar šo kļūdu apstrādātāju, iespējams, jūsu uzdevums nav pabeigts perfekti.

Interesanti raksti...