ВБА Сет Објецт Вариаблес - радне свеске, радни листови и друго

Овај водич ће вас научити како да дефинишете променљиве објекта помоћу израза Сет у ВБА.

Дефинисање променљивих објеката

Објекти су камен темељац Мицрософт Оффице -а - без објеката ништа не можемо постићи. У програму Екцел објекти укључују објекте радне свеске, радног листа или опсега. У Мицрософт Ворд -у, примери су Доцумент или Табле објекат. Сваки објекат има различите Некретнине и Методе које се могу програмирати за контролу понашања тог објекта.

Декларисање променљиве објекта

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

123456 Дим вкб као радна свескаДим вкс ас ВорксхеетДим Рнг ас РангеЗатамните вдДоц као документДим вдТбл као ТабелаДим схп као Облик

Ово Замутити декларација се може појавити унутар процедуре:

или изван процедуре на нивоу модула:

Ако је променљива декларисана на нивоу модула (изван процедуре), променљива се може користити у целом модулу.

Ако је променљива објекта декларисана са Публиц наредбом, онда се променљива може користити у целом ВБА пројекту:

Подешена вредност

Након што објекат декларирате, објекту морате додијелити вриједност. Ово се мора урадити помоћу Сет статемент и може се извршити само у оквиру а Процедура.

12345 Суб СетОбјецтс ()Подесите вкб = АцтивеВоркбоокСет вкс = Схеет1Постави рнг = опсег ("А1: Г4")Енд Суб

Напомена: Ово се разликује од додељивања вредности необјектним променљивим. МОРАТЕ користити израз Сет за додељивање објекта променљивој. Ако то не учините, добићете грешку:

Након што објекту доделите вредност, можете писати код за контролу понашања или руковање објектом.

ВБА програмирање | Генератор кода ради за вас!

Примери објеката у Екцелу

Објекат радне свеске

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

123456789101112 Суб ВоркбоокОбјецт ()'декларишите објекат радне свескеДим вкб као радна свеска'доделите несачувану радну свеску објектуСет вкб = Радне свеске ("Књига1")'сачувај радну свескувкб.СавеАс "Ц: \ дата \ тестбоок.клск"'затворите радну свескувкб.цлосе'не заборавите да ослободите предметСет вкб = НиштаЕнд Суб

Објекат радног листа

Слично, можете манипулирати радним листом или радним листовима након што декларишете радни лист као променљиву. У доњем примеру преименујемо Схеет1 и Схеет2.

12345678910111213 Подрадни листОбјект ()Дим вкс1 као радни листДим вкс2 као радни лист'иницијализујте објектеПоставите вкс1 = Лист1Сет вкс2 = Лист2'преименујте листовевкс1.Наме = "Купци"вкс2.Наме = "Производи"'поставите предмете на ништавкс1 = Ништавкс2 = НиштаЕнд Суб

Уморни сте од тражења примера ВБА кода? Испробајте АутоМацро!

Објекат домета

Објекат Ранге је један од најкориснијих објеката за манипулисање у Екцелу. У доњем примеру подебљамо опсег А1 до Е1 и форматирамо га са доњом ивицом.

12345678910111213 Под РангеОбјецт ()Дим рнг1 Ас Ранге'инцијализовати дометПостави рнг = опсег ("А1: Е1")'подебљајте опсег и поставите доњу границурнг.Фонт.Болд = ТачноСа рнг1.Бордерс (клЕдгеБоттом).ЛинеСтиле = клЦонтинуоус.ЦолорИндек = 0.ТинтАндСхаде = 0.Тежина = клТанакЗавршитиЕнд Суб

Објекат облика

Такође можете користити променљиве објеката за рад са облицима.

123456789101112 Суб АддСхапе ()Дим схп Ас Схапе'створити обликПостави схп = АцтивеДоцумент.Схапес.АддСхапе (мсоСхапеСмилеиФаце, 68.25, 225.75, 136.5, 96#)Са шп„промените боју и стил у унутрашњости.Филл.ФореЦолор.РГБ = РГБ (255, 255, 0).Филл.Солид'подесите осмех!.Подешавања. Ставка (1) = 0.07181ЗавршитиЕнд Суб
wave wave wave wave wave