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

Преглед садржаја

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

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

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

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

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

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

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

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

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

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

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

Шифра:

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

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

Шифра:

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

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

Енд Суб

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

Шифра:

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

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

Шифра:

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

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

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

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

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

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

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

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

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

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

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

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

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

Сада ћу модификовати код јер грешка Он прелази у следећи ред.

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

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

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

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

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

Занимљиви Чланци...