Навођење радног листа са променљивом објекта - Екцел савети

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

Јое покушава да одгонетне грешку на новом макроу који је управо написао.

Редак који додељује НектРов враћа грешку која каже „Објецт Вариабле ор Витх Блоцк Вариабле Нот Сет“.

Објектне променљиве су прилично цоол. У старим саветима на адреси користио бих регуларну променљиву попут ове:

OrigName = ActiveSheet.Name Worksheets(OrigName).Copy

Постоји бољи начин. Можете дефинирати променљиву као било који објекат, као што је радни лист. Постоји неколико предности овога. Краће је користити објектну променљиву уместо Радних листова (ОригНаме). Такође, док куцате код, ВБА ће знати да је променљива радни лист и понудиће одговарајућа својства и методе након што унесете тачку. Ево новог кода:

Dim WSO as Worksheet Set WSO = Activesheet WSO.Copy

Трик је, међутим, у томе што када имате објектну променљиву, она мора бити додељена кључном речи Сет. Ако не успете да ставите Сет у код, добићете помало неинтуитивну „Објецт Вариабле ор Витх Блоцк Вариабле Нот Сет“. Јое једноставно треба да претходи додељивању променљиве речју Сет.

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