Pahayag ng VBA GoTo | Paano gamitin ang Pahayag ng GoTo sa VBA?

Paglalahad ng Excel VBA GoTo

VBA GoTo ginamit ang pahayag kapag naganap ang isang error habang pinapatakbo ang code sa halip na ipakita ang error upang ipagpatuloy ang susunod na linya ng code sa pamamagitan ng hindi pagpapansin sa mensahe ng error. Mayroong dalawang uri ng mga pahayag ng GOTO na ang isa ay upang pumili ng anumang saklaw ng worksheet sa tinukoy na workbook at ang isa pa ay handler ng error.

Upang mapagtagumpayan ang inaasahang mga error sa VBA, mayroon kaming isang function na tinatawag na "GOTO". Makikita namin ang parehong uri ng mga pahayag ng GoTo sa artikulong ito.

2 Mga paraan upang magamit ang Pahayag ng GoTo sa VBA Code

Maaari mong i-download ang Template ng VBA GoTo Excel dito - VBA GoTo Excel Template

# 1 - Application. Pamamaraan ng GoTo

Kung nais mong pumunta sa tukoy na workbook o tukoy na worksheet sa lahat ng nabukhang mga workbook pagkatapos ay maaari naming gamitin ang pahayag na Application.GoTo na pamamaraan.

Tingnan natin ang syntax ng pamamaraan ng Application.GoTo

  • [Sanggunian]: Ito ay walang anuman kundi isang tinukoy na sanggunian ng cell. Kung ang sanggunian ay hindi ibinigay sa pamamagitan ng default dadalhin ka nito sa huling ginamit na saklaw ng cell.
  • [Mag-scroll]: Ito ay isang lohikal na pahayag ng TUNAY o MALI. Kung ang halaga ay TUNAY mag-scroll ito sa window, kung ang halaga kung MALI hindi ito mag-scroll sa window.
Halimbawa

Kung nais mong pumunta sa isang tukoy na cell sa tukoy na worksheet maaari naming magamit ang pamamaraan ng Goto. Mayroon akong 3 sheet na pinangalanang Jan, Peb, at Mar.

Ngayon kung nais kong pumunta sa cell C5 sa Jan sheet gagamitin ko ang hanay ng code sa ibaba.

Hakbang 1: Simulan ang excel macro name.

Code:

 Sub GoTo_Example1 () Tapusin ang Sub 

Hakbang 2: Simulan ang pamamaraan na "Paglalapat.GoTo

Code:

Sub GoTo_Example1 ()

Paglalapat.Goto

Wakas Sub

Hakbang 3: Sa sanggunian na sanggunian kailangan naming tukuyin ang pangalan ng worksheet at sa worksheet na iyon, kailangan naming banggitin ang tukoy na cell.

Code:

 Sub GoTo_Example1 () Application.Goto Reference: = Mga Worksheet ("Jan"). Saklaw ("C5") End Sub 

Hakbang 4: Nabanggit ang scroll bilang TUNAY.

Code:

 Sub GoTo_Example1 () Application. Sanggunian ng Larawan: = Mga Worksheet ("Jan"). Saklaw ("C5"), Mag-scroll: = True End Sub 

Hakbang 5: Patakbuhin ngayon ang code na ito gamit ang F5 key o maaari mo ring patakbuhin ang code na ito nang manu-mano, dadalhin ka nito sa tinukoy na sheet at tinukoy na cell.

Ngayon ay babaguhin ko ang scroll argument sa FALSE at makita ang pagbabago na makakaharap nito.

 Sub GoTo_Example1 () Application. Sanggunian ng Larawan: = Mga Worksheet ("Jan"). Saklaw ("C5"), Mag-scroll: = Maling Katapusan na Sub 

Kung nais mong pumunta sa isang tukoy na workbook pagkatapos ay kailangan mong banggitin din ang pangalan ng workbook bago ang pangalan ng workbook.

 Sub GoTo_Example1 () Application.Goto Reference: = Mga Workbook ("Book1.xlsx"). Mga Worksheet ("Jan"). Saklaw ("C5"), Mag-scroll: = False End Sub 

# 2 - Paraan ng Handler ng Error

Kapag ang partikular na linya ng code ay nakatagpo ng isang error pagkatapos ay tumitigil ang VBA sa pagpapatupad ng natitirang code at ipinapakita ang mensahe ng error.

Halimbawa tingnan ang linya sa ibaba ng code.

 Sub GoTo_Example2 () Sheets ("April"). Tanggalin ang Mga Sheet. Idagdag ang End Sub 

Sinasabi ng code sa itaas na tanggalin ang sheet Abril at magdagdag ng isang bagong sheet. Sa aktibong workbook kung mayroong anumang pangalan ng sheet na tinatawag na Abril tatanggalin nito o kung hindi ay ipapakita nito ang kahon sa dayalogo ng mensahe ng error.

Kapag pinatakbo ko ang code na ito ang aking workbook ay walang sheet na tinatawag na Abril, kaya't hindi mahanap ng VBA code ang pangalan ng sheet at itinapon ang error. Minsan kailangan nating balewalain ang error na ito sapagkat madalas na beses kung walang pangalan ng sheet na tinatawag na Abril kung gayon kailangan naming magpatuloy sa iba pang mga linya ng code.

Upang maalis ang error na ito maaari naming gamitin ang paraan ng GoTo bilang isang handler ng error.

Ngayon ay babaguhin ko ang code bilang On error pumunta sa susunod na linya

 Sub GoTo_Example2 () Sa Error GoTo NextLine Sheets ("Abril"). Tanggalin ang NextLine: Sheets. Idagdag ang End Sub 

Ngayon kung patakbuhin mo ito magdagdag ito ng bagong sheet kahit na walang pangalan ng sheet na tinatawag na Abril.

Ang pahayag "Sa Error GoTo NextLine" nauunawaan na kung may anumang error na magaganap tatalon ito sa susunod na linya at sa susunod na linya ang VBA code ay upang magdagdag ng isang bagong sheet.

Bagay na dapat alalahanin

  • Kung nais mong tumalon sa susunod na linya kapag naganap ang error maaari mo ring gamitin ang On Error Resume Susunod na pahayag ng VBA.
  • Upang tumalon sa susunod, kailangan mong tiyakin na ang partikular na linya ng code ay inaasahan na isang error.
  • Kung ang mahalagang linya ng mga code ay lumaktaw kasama ang handler ng error sa gayon ang iyong gawain ay maaaring hindi matapos na perpekto.