ВБА Сет Статеммент - Како доделити вредности променљивима објекта?

Преглед садржаја

Изјава о Екцел ВБА скупу

ВБА Сет је израз који се користи за додељивање било ког кључа вредности каже да објекат или референца на променљиву користимо ову функцију да дефинишемо параметар за одређену променљиву, на пример, ако напишемо Сет М = А што сада значи М референца има исте вредности и атрибуте сличне онима које има А.

У ВБА, објекат је језгро екцела јер без објеката не можемо ништа. Објекти су радна свеска, радни лист и опсег. Када декларишемо променљиву, морамо јој доделити тип података, а такође можемо доделити објекте као типове података. Да бисмо доделили вредност декларисаним објектним променљивим, морамо да користимо реч „СЕТ“. Реч „Сет“ се односила на нови објекат у ВБА, на пример, односећи се на одређени опсег одређеног радног листа.

Како се користи изјава за Екцел ВБА скуп?

# 1 - Постављање изјаве са променљивим објекта опсега

На пример, претпоставимо да желите прилично често да користите опсег од А1 до Д5. Уместо да код сваки пут запишемо као опсег („А1: Д5“), променљиву можемо прогласити опсегом и референцу опсега поставити као опсег („А1: Д5“)

Корак 1: Декларишите променљиву као објект опсега.

Шифра:

Поткомплет_Пример ()

Затамни МиРанге Ас Ранге

Енд Суб

Корак 2: У тренутку када тип података доделимо као опсег, употребите реч „Постави“.

Шифра:

Суб Сет_Екампле () Дим МиРанге Ас Ранге Сет МиРанге = Енд Суб

Корак 3: Сада спомените опсег.

Шифра:

Суб Сет_Екампле () Дим МиРанге Ас Ранге Сет МиРанге = Ранге ("А1: Д5") Енд Суб

Корак 4: Сада је променљива „МиРанге“ једнака опсегу од А1 до Д5. Користећи ову променљиву, можемо приступити свим својствима и методама овог опсега.

Можемо копирати, додати коментар у екцелу и радити многе друге ствари.

На пример, сврху, овде сам креирао неке бројеве.

Сада користим променљиву, променићу величину фонта на 12.

Шифра:

Суб Сет_Екампле () Дим МиРанге Ас Ранге Сет МиРанге = Ранге ("А1: Д5") МиРанге.Фонт.Сизе = 12 Енд Суб

Ово ће променити величину фонта додељеног опсега.

Овако, можемо учинити много ствари са одређеним опсегом помоћу речи „Постави“.

# 2 - Постављање изјаве са променљивим објекта радног листа

Видели смо како „сет“ ради са објектом опсега у ВБА. Функционише потпуно исто као и објекат радног листа.

Рецимо да имате 5 радних листова у својој радној свесци и желите да се вратите на онај одређени радни лист. То име радног листа можете поставити на дефинисану променљиву објекта.

На пример, погледајте доњи код.

Шифра:

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

У горњем коду променљива „Вс“ дефинисана је као променљива објекта, а у следећем реду, помоћу речи „Сет“, поставили смо променљиву на радни лист под називом „Суммари Схеет“.

Сада помоћу ове променљиве можемо да урадимо све ствари повезане са њом. Погледајте доња два скупа кода.

# 1 - без речи „Сет“

Шифра:

Суб Сет_Ворксхеет_Екампле1 () 'Да бисте изабрали радне листове листа ("Суммари Схеет"). Изаберите "Да бисте активирали радне листове листа (" Суммари Схеет "). Активирајте' Да бисте сакрили радне листове листа (" Суммари Схеет "). Висибле = клВериХидден 'То открити лист Радни листови („Суммари Схеет“). Видљиво = клВисибле Енд Суб

Сваки пут када сам се користио објектом радних листова да бих се позвао на лист „Суммари Схеет“, ово чини код тако дугим и захтева пуно времена за унос.

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

Сада погледајте предност коришћења речи Сет ин Цоде.

# 2 - помоћу речи „Сет“

Шифра:

Sub Set_Worksheet_Example() Dim Ws As Worksheet Set Ws = Worksheets("Summary Sheet") 'To select the sheet Ws.Select 'To Activate the sheet Ws.Activate 'To hide the sheet Ws.Visible = xlVeryHidden 'To unhide the sheet Ws.Visible = xlVisible End Sub

The moment we set the worksheet name, we can see the variable name while entering the code as part of the list.

#3 - Set Statement with Workbook Object Variables

The real advantage of the word “Set” in VBA arises when we need to reference different workbooks.

When we work with different workbooks, it is so hard to type in the full name of the workbook, along with its file extension.

Assume you have two different workbooks named “Sales Summary File 2018.xlsx” and “Sales Summary File 2019.xlsx” we can set the two workbooks like the below code.

Code:

Суб Сет_Воркбоок_Екампле1 () Дим Вб1 Ас Воркбоок Дим Вб2 Ас Воркбоок Сет Вб1 = Воркбоокс ("Филе Суммари Филе 2018.клск") Сет Вб2 = Воркбоокс ("Филе Суммари Филе 2019.клск") Енд Суб

Сада је променљива Вб1 једнака радној свесци под називом „Датотека сажетка продаје 2018.клск“, а променљива Вб2 једнака је радној свесци под називом „Датотека сажетка продаје 2019.клск“.

Користећи ову променљиву, заправо можемо приступити свим својствима и методама повезаним са радном свеском.

Код можемо скратити као доле.

Без коришћења постављене кључне речи за активирање радне свеске:

Радне свеске („Датотека сажетка продаје 2018.клск“). Активирајте

Коришћење постављене кључне речи за активирање радне свеске:

Вб1.Ацтивате

Ово чини писање серије шифре једноставнијим, а такође, када се постави име радне свеске, постоји забринутост због грешке у писању имена радне свеске.

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