ВБА тренутни регион

Овај водич ће објаснити како се користи Цуррент Регион у ВБА.

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

ЦуррентРегион Синтакса

Синтакса је врло једноставна:

1 Опсег ("Е11"). ЦуррентРегион.Селецт

где бисте навели ћелију чији тренутни регион желите да изаберете, а затим употребили ЦуррентРегион.Селецт својство за избор опсега ћелија.

Добијање тренутног региона

Размотрите следећи радни лист.

следећа подпроцедура би изабрала све ћелије у бази података

1234567 Суб ФиндЦуррентРегион ()Дим рнг Ас Ранге'подесите опсег на ћелију Е11Постави рнг = опсег ("Е11")'изаберите тренутни регионрнг.ЦуррентРегион.СелецтЕнд Суб

Ако покренемо рутину, све ћелије у ЦуррентРегион ћелије Е11 ће бити изабрано.

Ако уклонимо садржај суседних ћелија и поново покренемо рутину, следеће ће бити изабрано као тренутни регион.

Међутим, ако уклонимо још више података, могли бисмо завршити с доњим примјером за тренутну регију ћелије Е11.

Стављајући приступ информацијама у Д13, завршавамо са следећим:

Тхе ЦуррентРегион стога враћа другу домет објекат дефинисан најмањом комбинацијом заузетих колона и редова који окружују распон који сте унели.

Бројање редова и колона у тренутном региону

Можемо да користимо ЦуррентРегион за бројање редова и колона.

12345678910111213 Суб ФиндЦуррентРегион ()Дим рнг Ас РангеДим иРв Ас ИнтегерДим иЦол као цео број'подесите опсегПостави рнг = опсег ("Е11")'броји редовеиРв = рнг.ЦуррентРегион.Ровс.Цоунт'броји колонеиЦол = рнг.ЦуррентРегион.Цолумнс.Цоунт'приказати резултат у оквиру за порукуМсгБок ("Имамо редове" & иРв & "и колоне" & иЦол & "у нашем тренутном региону")Енд Суб

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

Брисање тренутног региона

Такође можемо користити тренутну карактеристику региона да обришемо распон ћелија.

123456 Суб ЦлеарЦуррентРегион ()Дим рнг Ас Ранге'подесите опсегПостави рнг = опсег ("Е11")рнг.ЦуррентРегион.ЦлеарЕнд Суб

Додељивање променљиве тренутном региону

Такође можемо да доделимо читав тренутни регион променљивој опсегу, а затим да употребимо тај променљиви опсег за манипулацију ћелијама - било да се ради о обликовању ћелија, сортирању ћелија итд …

12345678910 Суб АссигнЦуррентРегионТоВариабле ()Дим рнг Ас Ранге'подесите опсег као тренутни регион Е11Подесите рнг = опсег ("Е11"). ЦуррентРегион'обојите позадину и текстрнг.Интериор.Паттерн = клСолидрнг.Интериор.Цолор = 65535рнг.Фонт.Болд = Тачнорнг.Фонт.Цолор = -16776961Енд Суб

Ако покренемо горњу процедуру, завршићемо са радним листом као што је приказано испод!

Добијање почетне и крајње ћелије у тренутном региону

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

123456789101112131415161718 Суб ГетСтартАндЕндЦеллс ()Дим рнг Ас РангеДим иРв Ас ИнтегерДим иЦол као цео бројДим иЦолСтарт, иЦолЕнд, иРвСтарт, иРвЕнд Ас Стринг'подесите променљиву опсег као тренутну регију Е11Подесите рнг = опсег ("Е11"). ЦуррентРегион'поставите почетну колону за опсегиЦолСтарт = рнг.Цолумн'добити крајњу колону за опсегиЦолЕнд = иЦолСтарт + (рнг.Цолумнс.Цоунт - 1)'добити почетни ред за опсегиРвСтарт = рнг.Ров'добити крајњи ред за опсегиРвЕнд = иРвСтарт + (рнг.Ровс.Цоунт - 1)'приказати адресу почетних и завршних редова и колона у оквиру за порукуМсгБок ("Распон почиње на" & ћелије (иРвСтарт, иЦолСтарт). Адреса & "и завршава на" & ћелије (иРвЕнд, иЦолЕнд). Адреса)Енд Суб

Када покренемо горњи код, појавиће се следеће поље за поруку

wave wave wave wave wave