ВБА ТхисВоркбоок | Како се користи својство ове радне књиге у програму Екцел ВБА?

Екцел ВБА ТхисВоркбоок

ВБА ТхисВоркбоок означава радну свеску у коју пишемо екцел код. На пример, ако радите у радној свесци под називом „Продаја 2019.клск“, обично се на њу позивамо овако.

Радне свеске („Продаја 2019.клск“). Активирајте

Код ће активирати радну свеску под називом „Продаја 2019.клск“.

Уместо да пишемо овако, можемо једноставно да напишемо ВБА код испод.

ТхисВоркбоок.Ацтивате ’

Овде се ТхисВоркбоок односи на радну свеску у коју пишемо код. Упућивањем на ову реч можемо извршити све задатке у тренутној радној свесци и избећи дугачки код са потпуно именованим именом радне свеске.

Сигуран сам да сте и ви морали да видите реч „Активна радна свеска“ када се позивате на други код. Ово је такође једна од често коришћених речи у кодирању. Видећемо какве су разлике између ове две речи у основи.

Рад са овом радном књигом у програму Екцел ВБА

Референтна реч „ТхисВоркбоок“ поузданија је од квалификатора предмета Воркбоокс. Једна од људских тенденција је погрешно куцање назива радне свеске што резултира избацивањем поруке о грешци.

Још један важан разлог зашто је ВБА ТхисВоркбоок поузданији, јер за сваки случај ако променимо име радне свеске морамо да променимо код јер смо користили реч „ТхисВоркбоок“.

Дакле, ТхисВоркбоок је сигурније користити за позивање на радну свеску у коју пишемо код.

Овај ВБА ТхисВоркбоок Екцел образац можете преузети овде - ВБА ТхисВоркбоок Екцел Темплате

Пример # 1

Видећемо неке примере у којима можемо да користимо реч ТхисВоркбоок у екцелу ВБА. Следећи код ће исписати назив радне свеске.

Шифра:

 Суб ТВБ_Екампле1 () Дим ВБНаме Ас Стринг ВБНаме = ТхисВоркбоок.Наме МсгБок ВБНаме Енд Суб 

Када код покренете ручно или помоћу тастера Ф5, горњи код ће приказати име радне свеске у оквиру за поруке у ВБА.

Пример # 2

Уместо да користимо реч „Ова радна свеска“, можемо да користимо променљиве за подешавање референце на радну свеску, па чак и да драстично смањимо дужину кода у ВБА. На пример, прво погледајте доњи код.

Шифра:

 Под ТВБ_Екампле2 () ТхисВоркбоок.Ацтивате ТхисВоркбоок.Ворксхеетс ("Схеет1"). Ацтивате ТхисВоркбоок.Саве ТхисВоркбоок.Цлосе ТхисВоркбоок.СавеАс Енд Суб 

Горњи код је користио „ТхисВоркбоок“ у свим редовима кода. Колико је тешко откуцати реч сваки пут. Дакле, ово можемо минимизирати коришћењем променљивих.

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

Шифра:

 Суб ТВБ_Екампле2 () Затамни Вб као скуп радне свеске Вб = ТхисВоркбоок Вб.Ацтивате Вб.Ворксхеетс ("Схеет1"). 

Изгледа прелепо, зар не ??

Објаснићу вам код.

Прво сам променљиву прогласио објектом Воркбоок.

Затамни Вб као радну свеску

Будући да је ово променљива објекта, морамо поставити референцу на одређену радну свеску. Дакле, користио сам референцу „ТхисВоркбоок“.

Сет Вб = ТхисВоркбоок

Сада се променљива „Вб“ односи на радну свеску у којој тренутно пишемо код. Од сада па надаље у процедури не треба користити реч „ТхисВоркбоок“, већ можемо користити променљиву „Вб“

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

Као што сам рекао на почетку чланка, многи програмери често користе речи Ацтиве Воркбоок & ТхисВоркбоок у свом ВБА кодирању. Као читаоцу или новом ученику није лако разумети ово двоје. Па, дозволите ми да вам објасним неке разлике.

Разлика # 1: Значење

  • Активна радна свеска: Активна радна свеска није нужно радна свеска у коју тренутно пишемо код. Ако имате више отворених радних књига и која год радна свеска је видљива на вашем екрану, то се сматра Активна радна свеска.
  • ТхисВоркбоок: ТхисВоркбоок је увек радна свеска у коју тренутно пишемо код.

Разлика 2: шансе за грешку

  • Активна радна свеска: Коришћење Ацтиве-а у кодирању може довести до многих грешака и забуне, јер никада не знамо која је радна свеска активна, осим ако посебно не напоменемо радну свеску за активирање пре употребе речи Ацтиве Воркбоок.
  • ТхисВоркбоок: Ова радна свеска не може погрешити јер није важно која је радна свеска активна, увек узима референцу на радну свеску у коју пишемо код.