Овај чланак ће показати како се користи Витх и Енд Витх у ВБА
Екцел нам пружа могућност учења ВБА снимањем макроа. Ови макрои дословно бележе све што радимо на екрану и претварају радње у ВБА код. Затим можемо анализирати овај код и учити из њега.
Када снимамо макро у ВБА, што је најважније када мењамо формат ћелија, макро ће чешће користити Синтаксу Витх… Енд Витх у свом снимању. Разумевање шта ово значи и за шта се користи важан је део ВБА.
Снимање макроа
Да бисте снимили макро у програму Екцел, у Риббон, изаберите Поглед> Макро> Снимање макроа.
ИЛИ
Програмер> Снимање макроа
Напомена: Ако не видите траку за програмере, мораћете да је омогућите. Кликните ОВДЕ да бисте сазнали како то учинити.
Унесите име за макро и кликните на ОК.
Означите неке ћелије, а затим их форматирајте за подебљано, промените боју у црвену и прилагодите величину фонта. Затим кликните Стоп у доњем левом углу екрана да бисте зауставили снимање макроа.
СА Синтаксом исказа
Да бисте приказали / уредили снимљени макро: На траци изаберите Поглед> Макрои> Прикажи макрое. Одаберите макро снимљен, а затим кликните Уредити.
ИЛИ
На траци изаберите Програмер> Висуал Басиц да бисте прешли на ВБЕ прозор.
Снимљени макро може изгледати попут доњег примера
123456789 | Суб ВитхМацро ()Распон ("А2: Ц10"). ИзаберитеСелецтион.Фонт.Болд = ТачноСелецтион.Фонт.Сизе = 12Витх Селецтион.Фонт.Боја = -16776961.ТинтАндСхаде = 0ЗавршитиЕнд Суб |
Прво смо одабрали опсег А2: Ц10.
Затим смо подебљано подешили на труе, а величину фонта на 12. Имајте на уму да се код „Селецтион.Фонт“ понавља за ове редове.
Макро нас је тада снимио како мењамо боју текста - имајте на уму да овај пут Селецтион.Фонт има ВИТХ испред њега, а 2 својства која се мењају (боја и сенка) имају тачку (.) испред себе. Подручје кода се затим попуњава са ЗАВРШИТИ.
Да бисмо поједноставили овај код, можемо померити подебљано и величину тако да буду унутар наредбе ВИТХ, и стога уклонити потребу за понављањем речи Избор.
123456789 | Суб ВитхМацро ()Распон ("А2: Ц10"). ИзаберитеВитх Селецтион.Фонт. Болд = Тачно.Величина = 12.Боја = -16776961.ТинтАндСхаде = 0ЗавршитиЕнд Суб |
Синтакса наредбе ВИТХ… ЕНД ВИТХ је стога врло једноставна:
123 | ВИТХ Објецт'својства за форматирање/променуЗАВРШИТИ |
Кодекс смо могли изменити на другачији начин:
1234567 | Суб РемовеВитх ()Распон ("А2: Ц10"). ИзаберитеСелецтион.Фонт.Болд = ТачноСелецтион.Фонт.Сизе = 12Селецтион.Фонт.Цолор = -16776961Селецтион.Фонт.ТинтАндСхаде = 0Енд Суб |
У горњем примеру смо у сваки ред кода додали речи Селецтион.Фонт. Стога смо се у коду више пута позивали на објекат Селецтион.Фонт.
Међутим, коришћење наредбе ВИТХ значи да се на овај Објекат морамо позвати само једном у коду. То је чистији начин кодирања - каже ВБА да почиње са ВИТХ, а завршава на ЕНД ВИТХ - код за покретање је затворен унутар те 2 речи. Омогућава брже и ефикасније покретање макроа (посебно за дуже макрое) и додаје структуру вашем коду.