ВБА постављени опсег - Водич за постављање опсега ћелија у Екцел ВБА коду

Подесите опсег у програму Екцел ВБА

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

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

Шта је објект домета?

Опсег у ВБА се назива објектом. Опсег може садржавати једну ћелију, више ћелија, ред или колону итд.…

У ВБА можемо да класификујемо опсег као у наставку.

“Апликација >>> Радна свеска >>> Радни лист >>> Опсег”

Прво, морамо приступити апликацији. Затим се под овим морамо позивати на коју радну свеску се реферирамо, а у радној свесци се позивамо на који радни лист се позивамо, а затим на радном листу морамо споменути опсег ћелија.

Користећи опсег ћелија, можемо унети вредност у ћелију или ћелије, можемо прочитати или добити вредности из ћелије или ћелија, можемо избрисати, можемо форматирати, а можемо и многе друге ствари.

Како приступити опсегу ћелија у програму Екцел ВБА?

У ВБА кодирању, можемо се позвати на ћелију помоћу својства ВБА ЦЕЛЛС и објекта РАНГЕ. На пример, ако желите да се прво упутите на ћелију А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.

Претпоставимо да желите да одабрана ћелија буде референца, тада референцу можемо поставити на следећи начин.

Шифра:

Суб Ранге_Екамплес () Дим Рнг Ас Ранге Сет Рнг = Селецтион Рнг.Валуе = "Сет Ранге" Енд Суб

Ово је лепота, јер ако одаберем било коју од ћелија и покренем, убациће вредност и у те ћелије.

На пример, одабраћу одређене ћелије.

Сада ћу извршити код и видети шта ће се догодити.

За све изабране ћелије убацио је вредност.

Тако можемо и референцу на опсег поставити подешавањем променљивих у ВБА.

Ствари које треба запамтити

  • Опсег може да одабере више ћелија, али ЋЕЛИЈЕ могу да одаберу по једну ћелију.
  • РАНГЕ је објекат, а ЦЕЛЛС је својство.
  • Било којој променљивој објекта треба поставити референцу на објекат помоћу кључне речи СЕТ.

Занимљиви Чланци...