Изјава ВБА ГоТо | Како користити ГоТо изјаву у ВБА?

Изјава Екцел ВБА ГоТо

ВБА ГоТо наредба се користи када се приликом покретања кода догоди грешка, а не приказивање грешке за наставак следећег реда кода занемаривањем поруке о грешци. Постоје две врсте ГОТО изјава, једна је да одаберете било који опсег радног листа у наведеној радној свесци, а друга је руковалац грешкама.

Да бисмо превазишли очекиване грешке у ВБА, имамо функцију која се зове „ГОТО“. У овом чланку ћемо видети обе врсте ГоТо изјава.

2 начина за употребу ГоТо изјаве у ВБА коду

Овај ВБА ГоТо Екцел образац можете преузети овде - ВБА ГоТо Екцел предложак

# 1 - Апплицатион.ГоТо метода

Ако желите да одете до одређене радне свеске или одређеног радног листа у свим отвореним радним свескама, онда можемо да користимо методу Апплицатион.ГоТо.

Погледајмо синтаксу методе Апплицатион.ГоТо

  • [Референца]: Ово није ништа друго до наведена референца на ћелију. Ако референца подразумевано није наведена, одвешће се до последњег кориштеног опсега ћелија.
  • [Свитак]: Ово је логична изјава ТРУЕ или ФАЛСЕ. Ако је вредност ИСТИНА, помераће се кроз прозор, а ако је вредност ФАЛСЕ неће се кретати кроз прозор.
Пример

Ако желите да одете до одређене ћелије на одређеном радном листу, можемо користити Гото метод. Имам 3 листа са именом Јан, Феб и Мар.

Сада, ако желим да одем до ћелије Ц5 у листу Јан, користићу доњи скуп кода.

Корак 1: Покрените екцел име макронаредбе.

Шифра:

 Суб ГоТо_Екампле1 () Крај Суб 

Корак 2: Покрените методу “Апплицатион.ГоТо

Шифра:

Суб ГоТо_Екампле1 ()

Апплицатион.Гото

Енд Суб

Корак 3: У референтном аргументу морамо да наведемо име радног листа, а у том радном листу морамо да наведемо одређену ћелију.

Шифра:

 Суб ГоТо_Екампле1 () Апплицатион.Гото Референце: = Ворксхеетс ("Јан"). Ранге ("Ц5") Енд Суб 

Корак 4: Померите свитак као ТАЧНО.

Шифра:

 Суб ГоТо_Екампле1 () Апплицатион.Гото Референце: = Ворксхеетс ("Јан"). Ранге ("Ц5"), Сцролл: = Труе Енд Суб 

Корак 5: Сада покрените овај код помоћу тастера Ф5 или га можете покренути и ручно, одвешће вас до наведеног листа и одређене ћелије.

Сада ћу променити аргумент сцролл у ФАЛСЕ и видети промену на коју ће наићи.

 Суб ГоТо_Екампле1 () Апплицатион.Гото Референце: = Радни листови ("Јан"). Опсег ("Ц5"), Сцролл: = Фалсе Енд Суб 

Ако желите да одете на одређену радну свеску, онда морате да поменете и назив радне свеске пре назива радне свеске.

 Суб ГоТо_Екампле1 () Апплицатион.Гото Референце: = Воркбоокс ("Боок1.клск"). Ворксхеетс ("Јан"). Ранге ("Ц5"), Сцролл: = Фалсе Енд Суб 

# 2 - Метода руковања грешкама

Када одређена линија кода наиђе на грешку, тада ВБА престаје да извршава остатак кода и приказује поруку о грешци.

На пример, погледајте доњи ред кода.

 Суб ГоТо_Екампле2 () листови („април“). Избришите табеле.Додајте крај Суб 

Горњи код каже да треба избрисати лист Април и додати нови лист. Ако у активној радној свесци постоји име листа звано Април, она ће се избрисати или ће приказати доњи дијалошки оквир са поруком о грешци.

Када покренем овај код, моја радна свеска није имала лист под називом Април, тако да ВБА код није могао да пронађе име листа и баца грешку. Понекад морамо занемарити ову грешку, јер често, ако не постоји назив листа који се зове Април, онда морамо да наставимо са осталим редовима кода.

Да бисмо елиминисали ову грешку, можемо користити ГоТо метод као управљач грешкама.

Сада ћу модификовати код као грешка при преласку у следећи ред

 Суб ГоТо_Екампле2 () О грешци ГоТо НектЛине Схеетс ("Април"). Избриши НектЛине: Схеетс.Адд Енд Суб 

Сада ако покренете ово, додаће нови лист иако не постоји назив листа који се зове Април.

Изјава „На грешци ГоТо НектЛине“ разуме да ако дође до било какве грешке скочиће на следећи ред, а у следећем реду ВБА код је додавање новог листа.

Ствари које треба запамтити

  • Ако желите да пређете на следећи ред када се појави грешка, такође можете да користите наредбу Он Еррор Ресуме Нект ВБА.
  • Да бисте прешли на следећу, морате бити сигурни да се у тој линији кода очекује грешка.
  • Ако важна линија кода прескочи са овим руковаоцем грешкама, ваш задатак можда неће бити завршен у потпуности.