ВБА Последњи ред | Топ 3 методе за проналажење последњег коришћеног реда?

У ВБА када морамо пронаћи последњи ред постоји много различитих метода, а најчешће коришћена метода је метода Енд (КСЛДовн), а постоје и друге методе као што је проналажење последње вредности помоћу функције проналаска у ВБА, Енд (КСЛДовн ). Ред је најлакши начин да стигнете до последњег реда.

Екцел ВБА Последњи ред

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

За пример погледајте доњи код.

Шифра:

 Суб Ласт_Ров_Екампле1 () Опсег ("Д2"). Валуе = ВорксхеетФунцтион.Сум (Ранге ("Б2: Б7")) Крај Суб 

Горњи код каже да би вредност Д2 ћелије требало да представља збир опсега („Б2: Б7“).

Сада ћу на листу додати још вредности.

Сада ако покренем код, неће ми дати резултат ажурирања, већ се и даље држи старог опсега, тј. Опсега („Б2: Б7“).

Овде је динамички код веома важан.

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

Како пронаћи последњи коришћени ред у колони?

Испод су примери за проналажење последњег коришћеног реда у програму Екцел ВБА.

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

Метод # 1

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

Користићемо пречицу Цтрл + стрелица надоле.

Одвешће нас до последњег коришћеног реда пре било које празне ћелије. Исти метод ћемо користити и у ВБА да бисмо пронашли последњи ред.

Корак 1: Дефинишите променљиву као ЛОНГ.

Шифра:

 Суб Ласт_Ров_Екампле2 () Дим ЛР ас лонг 'За разумевање ЛР = Ласт Ред Енд Суб 

Корак 2: За ову променљиву ћемо доделити последњи коришћени број реда.

Шифра:

 Суб Ласт_Ров_Екампле2 () Дим ЛР Ас Лонг 'За разумевање ЛР = Последњи ред ЛР = Крај Суб 

Корак 3: Напишите код као ЋЕЛИЈЕ (Редови.број,

Шифра:

 Суб Ласт_Ров_Екампле2 () Дим ЛР Ас Лонг 'За разумевање ЛР = Последњи ред ЛР = Ћелије (Ровс.Цоунт, Енд Суб 

Корак 4: Сада наведите број колоне као 1.

Шифра:

 Суб Ласт_Ров_Екампле2 () Дим ЛР Ас Лонг 'За разумевање ЛР = Последњи ред ЛР = Ћелије (Редови.број, 1) Крај Суб 

ЋЕЛИЈЕ (Редови.број, 1) значи рачунати колико је редова у првој колони.

Дакле, горњи ВБА код ће нас одвести до последњег реда екцел листа.

Корак 5: Ако смо у последњој ћелији листа да бисмо прешли на последњи коришћени ред, притисните пречицу као Цтрл + стрелица нагоре кључ.

У ВБА морамо да користимо тастер за завршетак и горе, тј. Енд ВБА клУп

Шифра:

 Суб Ласт_Ров_Екампле2 () Дим ЛР Ас Лонг 'За разумевање ЛР = Последњи ред ЛР = Ћелије (Редови.број, 1). Крај (клУп) Крај Суб 

Корак 6: Сада ћемо одвести до последњег коришћеног реда одоздо. Сада нам треба број овог реда. Дакле, користите својство РОВ да бисте добили број реда.

Шифра:

 Суб Ласт_Ров_Екампле2 () Дим ЛР Ас Лонг 'За разумевање ЛР = Последњи ред ЛР = Ћелије (Ровс.Цоунт, 1) .Енд (клУп) .Ред Енд Суб 

Корак 7: Сада променљива садржи последњи коришћени број реда. Прикажите вредност ове променљиве у оквиру за поруке у ВБА коду.

Шифра:

 Суб Ласт_Ров_Екампле2 () Дим ЛР Ас Лонг 'За разумевање ЛР = Последњи ред ЛР = Ћелије (Ровс.Цоунт, 1) .Енд (клУп) .Ров МсгБок ЛР Енд Суб 

Покрените овај код помоћу тастера Ф5 или ручно, он ће приказати последњи коришћени ред.

Излаз:

Последњи коришћени ред на овом радном листу је 13.

Сада ћу обрисати још један ред и покренути код и видети динамичност кода.

Ок, сада резултат аутоматски заузима последњи ред.

Ово је динамички ВБА код последњег реда.

Као што сам показао у ранијем примеру, промените број реда из нумеричке вредности у ЛР.

Шифра:

 Суб Ласт_Ров_Екампле2 () Дим ЛР Ас Лонг 'За разумевање ЛР = Последњи ред ЛР = Ћелије (Ровс.Цоунт, 1) .Енд (клУп) .Ров Ранге ("Д2"). Валуе = ВорксхеетФунцтион.Сум (Ранге ("Б2: Б "& ЛР)) Крај под 

Уклонио сам Б13 и додао име променљиве ЛР.

Сада није важно колико редова додате, аутоматски ће узети ажурирану референцу.

Метод # 2

Последњи ред у ВБА такође можемо пронаћи помоћу објекта Ранге и посебног својства ВБА ћелија.

Шифра:

 Суб Ласт_Ров_Екампле3 () Дим ЛР ас Лонг ЛР = Ранге ("А: А"). СпециалЦеллс (клЦеллТипеЛастЦелл) .Ров МсгБок ЛР Енд Суб 

Код вам даје и последњи коришћени ред. На пример, погледајте доњу слику радног листа.

Ако ручно покренем код или користим тастер Ф5, резултат ће бити 12, јер је 12 последњи коришћени ред.

Излаз:

Сада ћу обрисати 12. ред и видети резултат.

Иако сам обрисао један ред, резултат и даље приказује 12.

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

Сачувао сам радну свеску и сада видим резултат.

Метод # 3

Можемо пронаћи последњи ред ВБА у коришћеном опсегу. Испод кода такође враћа последњи коришћени ред.

Шифра:

 Суб Ласт_Ров_Екампле4 () Дим ЛР ас Лонг ЛР = АцтивеСхеет.УседРанге.Ровс (АцтивеСхеет.УседРанге.Ровс.Цоунт) .Ров МсгБок ЛР Енд Суб 

Ово ће такође вратити последњи коришћени ред.

Излаз: