ВБА опција експлицитно | Како учинити променљиву декларацију обавезном?
Екцел ВБА опција експлицитно
Изјава променљивих је веома важна у ВБА, Опција експлицитно чини корисника обавезним да декларише све променљиве пре него што их користи, било која недефинисана променљива ће избацити грешку током извршавања кода, опцију кључне речи можемо написати експлицитно или је можемо омогућити за све кодове из опција омогућавањем да захтева декларацију променљиве.
У ВБА су све променљиве. Да бисмо чували податке, потребне су нам променљиве са одговарајућим типом података. Можете ме испитати зашто вам је потребна променљива када можете директно додати вредност у саму табелу. То је углавном због више корисника радне свеске, ако њоме рукује једна особа, онда можете директно упутити вредност на сам лист. Декларацијом променљивих можемо направити флексибилни код за чување података.
Шта је експлицитно ВБА опција?
Надам се да сте наишли на модро обрубљену реч „Оптион Екплицит“ на врху вашег модула пре него што је било који макро започет у том модулу.
На почетку учења ВБА ни ја нисам разумео шта је то и, искрено говорећи, уопште нисам ни размишљао о овоме. Не само за мене или за вас, већ је исто и за све у почетку. Али видећемо важност ове речи сада.
„Оптион Екплицит“ је наш ментор у декларисању променљиве. Додавањем ове речи чини декларацију променљиве обавезним процесом.
Овај експлицитни Екцел образац за ВБА опцију можете преузети овде - ВБА опција за експлицитни Екцел образацЗа пример погледајте доњи код за разумевање.
Шифра:
Под Пример 1 () и = 25 МсгБок и Крај Суб
Ако покренем овај код, добићемо вредност променљиве „И“ у оквиру за поруке у ВБА.
Сада ћу додати реч „Оптион Екплицит“ на самом почетку ВБА кода.
Сада ћу покренути код и видети шта ће се догодити. Ако вежбате са мном, притисните тастер Ф5 да бисте покренули код.
Имамо грешку компајлирања и пише „Променљива није дефинисана“. Нисмо прогласили променљиву „И“ али одмах смо му доделили вредност 25.
С обзиром на то да смо додали реч „Оптион Екплицит“, приморава нас да декларишемо променљиву обавезно.
У горњем коду абецеда „И“ је непријављен, па смо додали реч контролора променљиве „Оптион Екплицит“ која нас спречава да користимо непријављене променљиве.
Оног тренутка када додате реч „Оптион Екплицит“ на врх модула, применљиво је за све макронаредбе у том модулу да обавезно декларишу променљиве.
Како учинити декларацију променљивом обавезном?
Ако сте ручно додали променљиву ментор „Оптион Екплицит“ у свој модул када уметнете нови модул, ову променљиву ментор нећете добити подразумевано.
Ако мислите да сваки пут када требате ручно да додате реч „Оптион Екплицит“ за све нове модуле, онда грешите.
Јер ову реч можемо учинити обавезном у свим модулима једноставним подешавањем. Следите кораке у наставку да бисте прилагодили поставке.
Корак 1: Идите на Висуал басиц едитор.
Корак 2: Идите на ТООЛС и кликните на Оптионс.
Корак 3: Оног тренутка када кликнете на Оптионс, видећете прозор испод.
Корак 4: У овом прозору идите на Едитор и означите опцију „Захтевај декларацију променљиве“.
Корак 5: Кликните на ОК да затворите прозор.
Од сада па надаље, сваки пут када додате нови модул, аутоматски убацује реч „Експлицитна опција“.
Експлицитна опција је ваша уштеда
Опција Експлицитно нам помаже на много начина, већ од декларације променљиве која нам је обавезна, то ће нам помоћи до извршења. Погледајте доњи код.
Шифра:
Под Пример 2 () Затамни ЦуррентВалуе као целобројно ЦурентВалуе = 500 МсгБок ЦуррентВалуе Енд Суб
У горе наведеном коду променљиву „ЦуррентВалуе“ прогласио сам целим бројем. У следећем реду сам му доделио вредност 500. Ако покренем овај код, добићу 500 као резултат у оквиру за поруку. Али погледајте шта ће се догодити.
У њему пише „Променљива није дефинисана“ и истакнут је други ред.
Ако пажљиво погледамо други ред, постоји лагана правописна грешка. Моје име променљиве је „ЦуррентВалуе“, али у другом реду сам пропустио један правопис, тј. „Р“. Каже „ЦуррентВалуе“ уместо „ЦуррентВалуе“. Пошто сам декларацију променљиве учинио обавезном додавањем речи „Оптион Екплицит“ у екцел ВБА, истакло ми је грешку у куцању коју сам направио.
Дакле, када исправимо правопис и покренемо код, добићемо резултат како следи.
Поздрави новоименованог ментора променљиве !!!