Технике отклањања грешака за Екцел 2016 ВБА

Можда ћете наићи на неке проблеме са својим ВБА кодом, али како ћете пронаћи проблем? Понекад ће вашем ВБА коду можда требати отклањање грешака. Наставите да читате да бисте открили четири најчешће методе за отклањање грешака у Екцел ВБА коду:

  • Испитивање кода

  • Уметање МсгБок функција на различите локације у вашем коду

  • Уметање наредби Дебуг.Принт

  • Коришћење алата за отклањање грешака уграђених у Екцел

Испитивање вашег кода

Можда је најједноставнија техника отклањања грешака једноставно пажљиво погледати ваш код да видите да ли можете пронаћи проблем. Овај метод, наравно, захтева знање и искуство. Другим речима, морате да знате шта радите. Ако имате среће, грешка одмах искочи, а ви се лупите по челу и кажете: „Д'ох!“ Када се бол у челу смањи, можете решити проблем.

Обратите пажњу на употребу речи „Ако будете имали среће“. То је зато што често откријете грешке када радите на свом програму осам сати узастопно, 2 је ујутро, а ви радите на кофеину и снази воље. У таквим тренуцима имате среће ако чак можете да видите свој код, а камоли да пронађете грешке. Стога, немојте се изненадити ако једноставно испитивање вашег кода није довољно да бисте пронашли и избрисали све грешке које садржи.

Коришћење функције МсгБок

Уобичајени проблем у многим програмима укључује једну или више варијабли које не преузимају вредности које очекујете. У таквим случајевима, праћење променљиве(а) док се ваш код покреће је корисна техника за отклањање грешака. Један од начина да то урадите је уметање привремених МсгБок функција у вашу рутину. На пример, ако имате променљиву под називом ЦеллЦоунт, можете уметнути следећу изјаву:

МсгБок ЦеллЦоунт

Када извршите рутину, функција МсгБок приказује вредност ЦеллЦоунт-а.

Често је корисно приказати вредности две или више променљивих у оквиру за поруке. Следећа изјава приказује тренутну вредност две променљиве: ЛоопИндек (1) и ЦеллЦоунт (72), одвојене размаком.

МсгБок ЛоопИндек & “ “ & ЦеллЦоунт

Приметите да су две променљиве комбиноване са оператором конкатенације (&) и уметнути размак између њих. У супротном, оквир са поруком повезује две вредности, чинећи да изгледају као једна вредност. Такође можете користити уграђену константу, вбНевЛине, уместо знака за размак. вбНевЛине умеће прелом за улазак у ред, који приказује текст у новом реду. Следећа изјава приказује три променљиве, свака у посебном реду:

Технике отклањања грешака за Екцел 2016 ВБА

Коришћење оквира за поруке за приказ вредности три променљиве.

МсгБок ЛоопИндек & вбНевЛине & ЦеллЦоунт & вбНевЛине & МиВал

Ова техника није ограничена на праћење варијабли. Можете користити оквир за поруке да прикажете све врсте корисних информација док је ваш код покренут. На пример, ако ваш код прође кроз низ листова, следећа изјава приказује име и тип активног листа:

МсгБок АцтивеСхеет.Наме & “ “ & ТипеНаме (АцтивеСхеет)

Ако ваш оквир за поруку покаже нешто неочекивано, притисните Цтрл+Бреак и видећете оквир за дијалог који вам говори да је извршење кода прекинуто, имате четири избора:

  • Кликните на дугме Настави. Код наставља да се извршава.

  • Кликните на дугме Крај. Извршење се зауставља.

  • Кликните на дугме Отклањање грешака. ВБЕ прелази у режим за отклањање грешака.

  • Кликните на дугме Помоћ. Екран помоћи вам говори да сте притиснули Цтрл+Бреак. Другим речима, није од велике помоћи.

    Технике отклањања грешака за Екцел 2016 ВБА

    Притисак на Цтрл+Бреак зауставља извршавање вашег кода и даје вам неке могућности избора.

Ако ваша тастатура нема тастер Бреак, покушајте да притиснете Цтрл+СцроллЛоцк.

Слободно користите МсгБок функције често када отклањате грешке у свом коду. Само се побрините да их уклоните након што идентификујете и решите проблем.

Уметање наредби Дебуг.Принт

Као алтернативу коришћењу МсгБок функција у вашем коду, можете уметнути једну или више привремених изјава Дебуг.Принт. Користите ове изјаве да одштампате вредност једне или више променљивих у прозору Иммедиате. Ево примера који приказује вредности три променљиве:

Дебуг.Принт ЛоопИндек, ЦеллЦоунт, МиВал

Обратите пажњу да су варијабле одвојене зарезима. Можете приказати онолико променљивих колико желите помоћу једне изјаве Дебуг.Принт.

Дебуг.Принт шаље излаз у прозор Иммедиате чак и ако је тај прозор скривен. Ако ВБЕ-ов Иммедиате прозор није видљив, притисните Цтрл+Г (или изаберите Виев → Иммедиате Виндов). Ево неких излаза у прозору Иммедиате.

Технике отклањања грешака за Екцел 2016 ВБА

Наредба Дебуг.Принт шаље излаз у прозор Иммедиате.

За разлику од МсгБок-а, изјаве Дебуг.Принт не заустављају ваш код. Дакле, морате да пазите на прозор Иммедиате да бисте видели шта се дешава.

Након што отклоните грешке у коду, обавезно уклоните све изјаве Дебуг.Принт. Чак и велике компаније као што је Мицрософт повремено забораве да уклоне своје изјаве Дебуг.Принт. У неколико претходних верзија Екцел-а, сваки пут када се отвори програмски додатак Аналисис ТоолПак, видели бисте неколико чудних порука у прозору Иммедиате. Тај проблем је коначно решен у програму Екцел 2007.

Коришћење ВБА програма за отклањање грешака

Дизајнери Екцел-а су блиско упознати са концептом грешака. Сходно томе, Екцел укључује скуп алата за отклањање грешака који вам могу помоћи да исправите проблеме у вашем ВБА коду.


Обришите цртеже оловком и маркером на својим ПоверПоинт слајдовима

Обришите цртеже оловком и маркером на својим ПоверПоинт слајдовима

Ако сте користили оловку или маркер за цртање на ПоверПоинт слајдовима током презентације, можете да сачувате цртеже за следећу презентацију или да их избришете тако да ћете следећи пут када их покажете почети са чистим ПоверПоинт слајдовима. Пратите ова упутства да бисте избрисали цртеже оловком и маркером: Брисање линија један на […]

Садржај библиотеке стилова у СхареПоинт 2010

Садржај библиотеке стилова у СхареПоинт 2010

Библиотека стилова садржи ЦСС датотеке, датотеке Ектенсибле Стилесхеет Лангуаге (КССЛ) и слике које користе унапред дефинисане главне странице, изгледе страница и контроле у ​​СхареПоинт 2010. Да бисте лоцирали ЦСС датотеке у библиотеци стилова на локацији за објављивање: Изаберите Радње сајта→Прикажи Сав садржај сајта. Појављује се садржај сајта. Библиотека Стил налази се у […]

Форматирајте бројеве у хиљадама и милионима у Екцел извештајима

Форматирајте бројеве у хиљадама и милионима у Екцел извештајима

Немојте претрпати своју публику огромним бројевима. У Мицрософт Екцел-у можете побољшати читљивост својих контролних табли и извештаја тако што ћете форматирати своје бројеве тако да се појављују у хиљадама или милионима.

Како делити и пратити СхареПоинт локације

Како делити и пратити СхареПоинт локације

Научите како да користите СхареПоинт алатке за друштвено умрежавање које омогућавају појединцима и групама да комуницирају, сарађују, деле и повезују се.

Како претворити датуме у јулијанске формате у Екцелу

Како претворити датуме у јулијанске формате у Екцелу

Јулијански датуми се често користе у производним окружењима као временска ознака и брза референца за број серије. Ова врста кодирања датума омогућава продавцима, потрошачима и услужним агентима да идентификују када је производ направљен, а тиме и старост производа. Јулијански датуми се такође користе у програмирању, војсци и астрономији. Различит […]

Како да направите приступну веб апликацију

Како да направите приступну веб апликацију

Можете да креирате веб апликацију у програму Аццесс 2016. Дакле, шта је уопште веб апликација? Па, веб значи да је онлајн, а апликација је само скраћеница за „апликацију“. Прилагођена веб апликација је апликација базе података на мрежи којој се приступа из облака помоћу претраживача. Ви правите и одржавате веб апликацију у верзији за десктоп […]

Трака за брзо покретање у СхареПоинт 2010

Трака за брзо покретање у СхареПоинт 2010

Већина страница у систему СхареПоинт 2010 приказује листу веза за навигацију на траци за брзо покретање дуж леве стране странице. Трака за брзо покретање приказује везе ка садржају истакнутог сајта као што су листе, библиотеке, сајтови и странице за објављивање. Трака за брзо покретање укључује две веома важне везе: Линк за сав садржај сајта: […]

Шта значе поруке о грешци решавача у Екцел-у?

Шта значе поруке о грешци решавача у Екцел-у?

За једноставне проблеме, Солвер у Екцел-у обично брзо проналази оптималне вредности променљиве Решавача за функцију циља. Али, у неким случајевима, Солвер има проблема да пронађе вредности променљиве Солвера које оптимизују функцију циља. У овим случајевима, Солвер обично приказује поруку или поруку о грешци која описује или расправља о проблему који […]

Како уклонити израчуната поља и ставке из Екцел заокретне табеле

Како уклонити израчуната поља и ставке из Екцел заокретне табеле

Можете лако да уклоните израчуната поља и ставке из Екцел заокретне табеле. Да бисте уклонили израчунато поље, кликните на ћелију у изведеној табели. Затим кликните на команду Поља, ставке и скупови на картици Анализа и изаберите Израчунато поље из подменија који се појави. Када Екцел прикаже дијалог Уметање израчунатог поља, изаберите […]

Како означити у СхареПоинт-у

Како означити у СхареПоинт-у

Ознаке су кључне речи које додељујете садржају. Означавање страница за дељење са другима је обележавање на друштвеним мрежама, веома је популарно на вебу и лако је у СхареПоинт-у. Ако сте икада користили сајт као што је Делициоус, већ знате како функционише обележавање на друштвеним мрежама. Како све више људи додељује исте ознаке, ознаке постају начин на који […]