Ако ћете проводити време радећи са макроима у Висуал Басиц Едитор-у, зашто не бисте искористили неколико уграђених алата који ће вам олакшати посао? Ови савети ће знатно побољшати ваше искуство програмирања макроа.
Примена блок коментара
Постављање једног апострофа испред било које линије кода говори Екцел-у да прескочи тај ред кода. Ова техника се зове коментарисање кода. Већина програмера користи један апостроф за креирање коментара или белешки у коду, као што је приказано овде.
Један апостроф испред било ког реда претвара тај ред у коментар.
Понекад је корисно коментарисати више редова кода. На овај начин можете тестирати одређене линије кода док говорите Екцел-у да игнорише коментарисане линије.
Уместо да трошите време на коментарисање једног по једног реда, можете користити траку са алаткама за уређивање да бисте коментарисали цео блок кода.
Да бисте активирали траку са алаткама Едит, идите на ВБЕ мени и изаберите Виев→Тоолбарс→Едит. Изаберите линије кода које желите да коментаришете, а затим кликните на икону Блок коментара на траци са алаткама Уређивање, као што је приказано овде.
Користите траку са алаткама за уређивање да бисте применили коментаре на блок кода.
Копирање више линија кода
Можете копирати читаве блокове кода тако што ћете означити линије које су вам потребне, а затим држати притиснут тастер Цтрл док превлачите блок. Овај стари Виндовс трик функционише чак и када превлачите преко модула.
Знаћете да превлачите копију када курсор покаже симбол плус поред ње, као што је приказано овде.
Цтрл-превуците да бисте направили копију.
Прескакање између модула и процедура
Након што ваш кеш макро кода почне да расте, може бити мука за брзо кретање између модула и процедура. Можете ублажити бол помоћу неколико врућих тастера.
Телепортовање на ваше функције
Када прегледате макро, можете наићи на променљиву или назив функције који очигледно указује на неки други део кода. Уместо да претражујете кроз све модуле да бисте пронашли одакле долази назив функције или променљиве, можете једноставно поставити курсор на ту функцију или назив променљиве и притиснути Схифт+Ф2.
Као што ова слика илуструје, одмах сте телепортовани у порекло имена те функције или променљиве. Притиском на Цтрл+Схифт+Ф2 вратићете се тамо одакле сте почели.
Притисните Схифт+Ф2 на имену функције или променљиве које желите да пређете на њу.
Остати у исправној процедури
Када ваши модули садрже више процедура, скроловање кроз одређену процедуру без нехотичног скроловања у другу процедуру може бити тешко. Често ћете наћи себе како скролујете горе, а затим доле, покушавајући да се вратите на исправан део кода.
Да бисте избегли ову глупост, кликните на дугме Приказ процедуре у доњем левом углу ВБЕ-а, као што је приказано овде. То ограничава померање само на процедуру у којој се налазите.
Ограничите померање на активну процедуру.
Корак кроз ваш код
Да бисте прешли кроз свој код, потребно је да свој макро ставите у режим за отклањање грешака. Једноставно поставите курсор било где у свом макроу, а затим притисните тастер Ф8.
У програмирању, термин отклањање грешака означава проналажење и исправљање могућих грешака у коду. Један од кориснијих алата за отклањање грешака је могућност да се кроз свој код прелази ред по ред. Када прелазите кроз код, гледате како се извршава сваки ред.
Први ред кода је истакнут и мала стрелица се појављује на левој маргини прозора кода, као што је приказано овде. Поново притисните Ф8 да бисте извршили означени ред кода и прешли на следећи ред. Наставите да притискате Ф8 да бисте гледали како се извршава свака линија до краја макроа.
Притисните Ф8 да пређете кроз сваки ред вашег макроа.
Да бисте изашли из режима за отклањање грешака, идите на ВБЕ мени и изаберите Дебуг→Степ Оут.
Прелазак на одређену линију кода
Шта ако желите да почнете да корачате кроз свој код на одређеној линији? Па, то можете учинити једноставним померањем стрелице!
Када је линија кода истакнута у режиму за отклањање грешака, можете кликнути и превући стрелицу на левој маргини прозора кода нагоре или надоле, спуштајући је на било коју линију кода коју желите да извршите следеће, као што је приказано овде.
Превуците стрелицу док корачате кроз код.
Заустављање кода на унапред дефинисаној тачки
Када поставите тачку прекида, ваш код ће радити нормално, а затим ће се зауставити на линији кода где сте дефинисали као тачку прекида.
Ова техника отклањања грешака је згодна када желите да покренете тестове малих блокова кода истовремено. На пример, ако сумњате да постоји грешка у вашем макроу, али знате да се већина макроа ради без икаквих проблема, можете поставити тачку прекида почевши од сумњиве линије кода, а затим покренути макро. Када макро достигне вашу тачку прекида, извршење се зауставља. У овом тренутку можете притиснути тастер Ф8 на тастатури да бисте гледали како се макро покреће један по ред.
Да бисте поставили преломну тачку у свом коду, поставите курсор на место где желите да почне тачку прекида, а затим притисните тастер Ф9 на тастатури. ВБА ће јасно означити тачку прекида са тачком на левој маргини прозора кода, а сама линија кода ће бити осенчена кестењасто.
Тачка прекида је означена тачком и осенченим текстом.
Када ваш макро достигне тачку прекида, он ће ефективно бити стављен у режим за отклањање грешака. Да бисте изашли из режима за отклањање грешака, можете отићи до ВБЕ менија и изабрати Дебуг →Степ Оут.
Видети почетне и крајње вредности променљивих
Ако пређете курсором преко променљиве Стринг или Интегер у ВБА док сте у режиму за отклањање грешака, можете видети вредност те променљиве у опису алата. Ова функција вам омогућава да видите вредности које се прослеђују у променљиве и из њих, што је корисно приликом отклањања грешака кода.
Међутим, описи могу да садрже само 77 знакова (укључујући име променљиве), тако да ако је вредност у вашој променљивој предугачка, биће одсечена. Да бисте видели даље од првих 77 знакова, једноставно држите притиснут тастер Цтрл док лебдите.
Ево како изгледа опис алата када пређете мишем преко променљиве у режиму за отклањање грешака.
Почетни и завршни знакови у променљивој алатки.
Искључивање аутоматске провере синтаксе
Често ћете, док радите на неком коду, открити да морате да пређете на другу линију да бисте нешто копирали. Нисте завршили са линијом; само треба да га оставите на секунд. Али ВБЕ вас одмах зауставља у вашим траговима поруком о грешци, сличној оној приказаној овде, упозоравајући вас на нешто што већ знате.
Недовршена линија кода доводи до страшне поруке о грешци.
Ови оквири за поруке присиљавају вас да зауставите оно што радите да бисте потврдили грешку притиском на дугме ОК. После пола дана ових наглих оквира са порукама, бићете спремни да баците рачунар о зид.
Па, можете сачувати свој рачунар и здрав разум искључивањем аутоматске провере синтаксе. Идите горе до ВБЕ менија и изаберите Тоолс→Оптионс. Појављује се оквир за дијалог Оптионс, који приказује картицу Едитор. Опозовите избор опције Ауто Синтак Цхецк да зауставите ове досадне поруке о грешци.
Спречите поруке упозорења током кодирања.
Не брините да ћете пропустити легитимну грешку. Ваш код ће и даље постати црвен ако забрљате, пружајући визуелну индикацију да нешто није у реду.