ВБА ЛистОбјецтс - Водич за ЛистОбјецт Екцел табеле у програму Екцел ВБА

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

Шта су ЛистОбјецтс у ВБА?

У табели обично видимо скуп података, али у терминологији ВБА постоји много више таквих као што је опсег укупног опсега листе података, колона је позната као колона листе, а ред познат као ред листе итд. , тако да за приступ овим својствима имамо уграђену функцију познату као Листобјецтс и која се користи са функцијом радног листа.

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

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

Направите формат табеле користећи ЛистОбјецтс у програму Екцел ВБА

На пример, погледајте доленаведене Екцел податке.

Користећи ВБА ЛистОбјецт код, створићемо формат табеле за ове податке.

  • За ове податке прво морамо пронаћи који је последњи коришћени ред и колона, па дефинишите две променљиве да бисте то пронашли.

Шифра:

Суб Лист_Објецтс_Екампле1 () Дим ЛР Ас Лонг Дим ЛЦ Ас Лонг Енд Суб
  • Да бисте пронашли последњи коришћени ред и колону, користите доњи код.

Шифра:

ЛР = ћелије (редови.број, 1). Завршетак (клУп). Ред ЛЦ = ћелије (1, ступци.број). Завршетак (клТоЛефт) .колона
  • Сада дефинишите још једну променљиву која ће садржати референцу података.

Шифра:

Дим Рнг Ас Ранге
  • Сада поставите референцу на ову променљиву помоћу доњег кода.

Шифра:

Поставите Рнг = ћелије (1, 1). Величина (ЛР, ЛЦ)

Сада треба да користимо ВБА методу „ЛистОбјецт.Адд“ да бисмо креирали табелу, а испод је синтакса исте.

ЛистОбјецт.Адд (Соурце, КслЛистОбјецтХасХеадерс, Дестинатион, ТаблеСтилеНаме)

Извор: Ово није ништа за који опсег ћелија убацујемо табелу. Дакле, овде можемо навести два аргумента, тј. „КслСрцРанге“ и „клСрцЕктернал“.

КслЛистОбјецтХасХеадерс: Ако табела која убацује податке има заглавља или не. Ако је одговор да, можемо дати „клИес“. Ако не, можемо да доставимо „клНо.“

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

Стил табеле: Ако желите да примените било који стил табеле, можемо пружити стилове.

  • Ок, сада на активном листу, ми креирамо табелу, тако да би доњи код створио табелу за нас.

Шифра:

Дим Вс Ас Ворксхеет Сет Вс = АцтивеСхеет Вс.ЛистОбјецтс.Адд клСрцРанге, кллистобјецтхасхеадерс: = клИес, Дестинатион: = Рнг
  • После овога, овој таблици морамо дати име.

Шифра:

Вс.ЛистОбјецтс (1) .наме = "ЕмпТабле"
  • Испод је пуни код за вашу референцу.

Шифра:

Суб Лист_Објецтс_Екампле1 () Дим ЛР Ас Лонг Дим ЛЦ Ас Лонг ЛР = Целлс (Ровс.Цоунт, 1) .Енд (клУп) .Ред ЛЦ = Целлс (1, Цолумнс.Цоунт) .Енд (клТоЛефт) .Цолумн Дим Рнг Ас Ранге Постави Рнг = Ћелије (1, 1) .Ресизе (ЛР, ЛЦ) Дим Вс Ас Ворксхеет Сет Вс = АцтивеСхеет Вс.ЛистОбјецтс.Адд клСрцРанге, кллистобјецтхасхеадерс: = клИес, Дестинатион: = Рнг Вс.ЛистОбјецтс (1) .наме = " ЕмпТабле "Енд Суб

Ок, покренимо код и видимо магију.

Створио је табелу за поменуте податке и дао јој име табеле као „ЕмпТабле“.

Форматирање Екцел табела помоћу ВБА ЛистОбјецтс

Једном када је креирана Екцел табела, можемо да радимо са табелама помоћу ВБА ЛистОбјецт колекције.

  • Прво дефинишите променљиву као „ЛистОбјецт“.

Шифра:

Суб Лист_Објецтс_Екампле2 () Затамни МиТабле као ЛистОбјецт Енд Суб
  • Сада поставите референцу на ову променљиву помоћу имена табеле.

Шифра:

Суб Лист_Објецтс_Екампле2 () Затамни МиТабле као ЛистОбјецт Сет МиТабле = АцтивеСхеет.ЛистОбјецтс ("ЕмпТабле") Енд Суб

Сада променљива „МиТабле“ садржи референцу за табелу „ЕмпТабле“.

  • Унесите име променљиве и ставите тачку да бисте видели својства и методе ВБА ЛистОбјецт.

На пример, ако желимо да изаберемо целу табелу, онда морамо да користимо објекат „Распон“, а под тим треба да користимо метод „Изабери“.

Шифра:

МиТабле.Ранге.Селецт

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

  • Ако желите да изаберете само садржај табеле без заглавља, онда морамо да користимо „ДатаБодиРанге“.

Шифра:

МиТабле.ДатаБодиРанге.Селецт

Овако, можемо се играти са столовима.

  • Испод је листа кодова активности за вашу референцу.

Шифра:

Суб Лист_Објецтс_Екампле2 () Затамни МиТабле као ЛистОбјецт Сет МиТабле = АцтивеСхеет.ЛистОбјецтс ("ЕмпТабле") МиТабле.ДатаБодиРанге.Селецт 'Да бисте изабрали опсег података без заглавља МиТабле.Ранге.Селецт' Да бисте изабрали опсег података са заглављима МиТабле.ХеадерРигхтРовРаве. Изаберите редове заглавља табеле МиТабле.ЛистЦолумнс (2) .Ранге.Селецт 'За одабир колоне 2 укључујући заглавље МиТабле.ЛистЦолумнс (2) .ДатаБодиРанге.Селецт' За одабир колоне 2 без заглавља Енд Суб

Овако, можемо да користимо колекцију „ЛистОбјецт“ за поигравање са екцел табелама.

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

  • ВБА ЛистОбјецт је колекција објеката који упућују на Екцел табеле.
  • Да бисмо прво приступили колекцији ЛистОбјецт, морамо да одредимо који је радни лист на који се позивамо.

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