ВБА постављени опсег | Водич за постављање опсега ћелија у Екцел ВБА коду
Подесите опсег у програму Екцел ВБА
Подесите опсег у вба значи да специфицирамо задати опсег кода или процедуру коју треба извршити, ако коду не пружимо одређени опсег, он ће аутоматски преузети опсег из радног листа који има активну ћелију, тако да је у коду веома важно имати сет променљивих опсега.
Након толико година рада са Екцелом, сигурно сте схватили чињеницу да су сви радови које радимо на радном листу, а на радним листовима ћелије садрже податке. Дакле, када се желите поиграти подацима, морате имати образац понашања ћелија на радним листовима. Дакле, када се скупе вишеструке ћелије, то постаје РАНГЕ. Да бисте научили ВБА, требали бисте знати све о ћелијама и опсезима. Дакле, у овом чланку ћемо вам показати како да детаљно подесите опсег ћелија које се могу користити за ВБА кодирање.
Шта је објект домета?
Опсег у ВБА се назива објектом. Опсег може садржавати једну ћелију, више ћелија, ред или колону итд.…
У ВБА можемо класификовати опсег као у наставку.
“Апликација >>> Радна свеска >>> Радни лист >>> Опсег”
Прво морамо да приступимо апликацији, а затим се под овим морамо позвати на коју радну свеску се позивамо и у тој радној свесци се позивамо на који радни лист се позивамо, а затим на радном листу морамо споменути опсег ћелија.
Користећи опсег ћелија можемо унети вредност у ћелију или ћелије, можемо прочитати или добити вредности из ћелије или ћелија, можемо избрисати, можемо форматирати и можемо урадити и многе друге ствари.
Како приступити опсегу ћелија у програму Екцел ВБА?
Овде можете преузети овај ВБА постављени опсег Екцел предлога - ВБА постављени опсег Екцел предлошкаУ ВБА кодирању можемо се позвати на ћелију помоћу својства ВБА ЦЕЛЛС и РАНГЕ објекта. На пример, ако се желите позивати на ћелију А1, прво ћемо видети објекат РАНГЕ.
Унутар потпроцедуре прво морамо отворити РАНГЕ објекат.
Шифра:
Суб Ранге_Екамплес () Ранге (Енд Суб
Као што видите изнад РАНГЕ објект питајући на коју ћелију се позивамо. Зато треба да унесемо адресу ћелије у двоструким наводницима.
Шифра:
Суб Ранге_Екамплес () Ранге ("А1") Енд Суб
Једном када се наведе адреса ћелије, треба да одлучимо шта ћемо радити са овом ћелијом користећи својства и методе. Сада ставите тачку да бисте видели својства и методе РАНГЕ објекта.
Ако желимо да уметнемо вредност у ћелију, треба да изаберемо својство „Валуе“.
Шифра:
Суб Ранге_Екамплес () Ранге ("А1"). Валуе Енд Суб
Да бисмо поставили вредност, морамо ставити знак једнакости и унети вредност коју желимо да убацимо у ћелију А1.
Шифра:
Суб Ранге_Екамплес () Ранге ("А1"). Валуе = "Екцел ВБА Цласс" Енд Суб
Покрените код кроз опцију покретања и погледајте магију у ћелији А1.
Као што је поменуто у коду, вредност смо добили у ћелији А1.
Слично томе, на ћелију се можемо позивати и коришћењем својства ЦЕЛЛС. Отворите својство ЦЕЛЛС и погледајте синтаксу.
Ово је за разлику од РАНГЕ објекта где адресу ћелије можемо унети директно у двоструке наводнике, уместо тога треба да дамо број реда и колону да бисмо се односили на ћелију. Будући да се позивамо на ћелију А1, можемо рећи да је ред 1, а колона 1.
Након помињања адресе ћелије, можемо користити својства и методе за рад са ћелијама. Али проблем је овде за разлику од објекта домета након стављања тачке нећемо видети листу интеллисенсе.
Дакле, морате бити стручњак да бисте се односили на ћелије помоћу својства ЦЕЛЛС.
Шифра:
Суб ЦЕЛЛС_Екамплес () Ћелије (1, 1) .Валуе = "Екцел ВБА Цласс" Енд Суб
Приступ више ћелија и постављање референце опсега у ВБА
Једна од великих разлика између ЦЕЛЛС & РАНГЕ је коришћење ЦЕЛЛС, можемо приступити само једној ћелији, али помоћу РАНГЕ можемо приступити и више ћелија.
На пример, за ћелије од А1 до Б5, ако желимо вредност 50, можемо написати код као испод.
Шифра:
Суб Ранге_Екамплес () Ранге ("А1: Б5"). Валуе = 50 Енд Суб
Ово ће уметнути вредност 50 из ћелије А1 до Б5.
Уместо да се директно позивамо на ћелије, можемо користити променљиву да задржимо референцу одређених ћелија.
Прво дефинишите променљиву као објекат „Распон“.
Шифра:
Суб Ранге_Екамплес () Дим Рнг Ас Ранге Енд Суб
Једном када је променљива дефинисана као објекат „Распон“, треба да поставимо референцу за ову променљиву о томе које ће адресе ћелија држати референцу.
Да бисмо поставили референцу, морамо користити кључну реч „СЕТ“ и унети адресе ћелија помоћу објекта РАНГЕ.
Шифра:
Суб Ранге_Екамплес () Дим Рнг Ас Ранге Сет Рнг = Ранге ("А1: Б5") Енд Суб
Сада се променљива „Рнг“ односи на ћелије од А1 до Б5.
Уместо да напишемо опсег адресе ћелије („А1: Б5“), можемо једноставно да користимо име променљиве „Рнг“.
Шифра:
Суб Ранге_Екамплес () Дим Рнг Ас Ранге Сет Рнг = Ранге (Ранге ("А1: Б5") Рнг.Валуе = "Ранге Сеттинг" Енд Суб
Сада ће ово уметнути поменуту вредност из ћелије А1 у ћелију Б5.
Претпоставимо да желите да шта год одабрана ћелија буде референца онда референцу можемо поставити на следећи начин.
Шифра:
Суб Ранге_Екамплес () Дим Рнг Ас Ранге Сет Рнг = Селецтион Рнг.Валуе = "Сет Ранге" Енд Суб
Ово је лепота, јер ако одаберем било коју од ћелија и покренем, убациће вредност и у те ћелије.
На пример, одабраћу одређене ћелије.
Сада ћу извршити код и видети шта ће се догодити.
За све изабране ћелије убацио је вредност.
Тако можемо и референцу на опсег поставити подешавањем променљивих у ВБА.
Ствари које треба запамтити
- Опсег може да одабере више ћелија, али ЋЕЛИЈЕ могу да одаберу по једну ћелију.
- РАНГЕ је објекат, а ЋЕЛИЈЕ је својство.
- Било којој променљивој објекта треба поставити референцу на објекат помоћу кључне речи СЕТ.