Змест
Калі ў нашай кнізе Excel ёсць вялікі набор даных, часам бывае зручна, калі мы можам перабіраць радкі, каб атрымаць пэўныя вынікі, якія мы хочам атрымаць. Укараненне VBA з'яўляецца найбольш эфектыўным, хуткім і бяспечным метадам выканання любой аперацыі ў Excel. У гэтым артыкуле мы пакажам вам 11 розных метадаў таго, як перабіраць радкі табліцы ў Excel з дапамогай макраса VBA .
Спампаваць кнігу
Вы можаце спампаваць бясплатную вучэбную кнігу Excel адсюль.
Перагляд радкоў табліцы з дапамогай VBA.xlsm
11 метадаў VBA для прагляду радкоў табліцы ў Excel
Пасля гэтага раздзела вы даведаецеся, як праглядаць радкі табліцы з дапамогай 11 розных метадаў, напрыклад, перабіраць радкі да пустой ячэйкі, перабіраць радкі, пакуль не будзе знойдзена пэўнае значэнне, перабіраць радкі і афарбоўваць пэўную ячэйку і г.д. з дапамогай макраса VBA у Excel.
Вышэй прыведзены прыклад набору дадзеных, які будзе прытрымлівацца гэтага артыкула для апісання метадаў.
1. Убудаваць VBA, каб праглядаць кожную ячэйку ў кожным радку табліцы па нумары спасылкі на ячэйку
Калі вы хочаце праглядваць кожную ячэйку ў кожным радку табліцы ў вашым аркушы Excel і атрымаць нумар спасылкі на ячэйку ў якасці вяртанага значэння , затым выканайце дзеянні, апісаныя ніжэй.
Крокі:
- У пачатку , націсніце Alt + F11 на клавіятуры або ідзіцезменная.
4988
Гэты фрагмент кода прызначаны для прагляду радкоў ад 1 да 15. Калі ён знаходзіць канкрэтнае слова « Edge », то ён афарбоўвае ячэйку, якая змяшчае гэтае слова. Ён працягвае рабіць гэта, пакуль не скончыць сканіраванне ўсіх даных з радкоў 1 па 15 у пошуку слова.
Дадатковая інфармацыя: Як выкарыстоўваць масіў табліц VLOOKUP на аснове Значэнне ячэйкі ў Excel
Падобныя паказанні
- Ці існуе функцыя TABLE у Excel?
- Як пераўтварыць табліцу ў спіс у Excel (3 хуткіх спосабу)
- Пераўтварыць дыяпазон у табліцу ў Excel (5 простых метадаў)
- Эфектыўна выкарыстоўвайце формулу ў табліцы Excel (з 4 прыкладамі)
- Назва табліцы Excel: усё, што вам трэба ведаць
7. Рэалізуйце VBA для перабору кожнага радка і афарбоўвання кожнага няцотнага радка ў Excel
З папярэдняга раздзела мы даведаліся, як афарбоўваць ячэйку, якая змяшчае пэўнае значэнне. У гэтым раздзеле мы даведаемся, як перабіраць кожны радок табліцы і афарбоўваць кожны няцотны радок з дапамогай макраса VBA у Excel.
Этапы для выканання працэсу апісаны ніжэй.
Крокі:
- Як паказана раней, адкрыйце Visual Basic Editor з Developer і Устаўце Модуль у акно кода.
- Затым скапіруйце наступны код і ўстаўце яго ў акно кода.
4332
Цяпер ваш код гатовы да запуску.
- Зараз, Запусціце макрас і паглядзіце на наступны малюнак, каб убачыць вынік.
Усе няцотныя радкі афарбаваны пасля прагляду ўсіх радкоў, якія знаходзяцца ў табліцы працоўнага аркуша.
Тлумачэнне кода VBA
5330
Вызначце зменную.
1417
Вызначце дыяпазон, з якім мы будзем працаваць.
1350
Гэтая частка кода адносіцца да ітэрацыі па ўсіх радках, пачынаючы з наступнага радка бягучага радка, B4 . Калі мод дзялення нумароў радкоў на 2 роўны вернутаму нумару радка, які захоўваецца ў цэлым тыпе, то гэты код афарбоўвае ўсе радкі, якія здабываюцца ў выніку вылічэнняў, з каляровым індэксам, указаным у кодзе. Ён працягвае рухацца праз усе радкі, пакуль не дасягне канца дыяпазону.
8. Рэалізуйце VBA для перабору радкоў і афарбоўвання кожных цотных радкоў у Excel
У папярэднім раздзеле мы навучыліся афарбоўваць кожны няцотны радок табліцы. У гэтым раздзеле мы даведаемся, як перабіраць кожны радок табліцы і афарбоўваць кожны цотны радок з дапамогай макраса VBA ў Excel.
Крокі для выканання працэсу абмяркоўваюцца ніжэй.
Крокі:
- Спачатку адкрыйце Рэдактар Visual Basic з укладкі Распрацоўшчык і Устаўце Модуль у акне кода.
- Затым скапіруйце наступны код і ўстаўце яго ў акно кода.
6846
Ваш код гатовызапусціце.
- Далей, запусціце макрас і паглядзіце на наступны малюнак, каб убачыць вынік.
Усе цотныя радкі афарбоўваюцца пасля прагляду ўсіх радкоў у табліцы працоўнага ліста.
Тлумачэнне кода VBA
5257
Вызначце зменную.
8041
Вызначце дыяпазон, з якім мы будзем працаваць.
3831
Гэты фрагмент кода пачынае паўтарацца пасля тры радкі з бягучага радка, B4 . Спачатку ён афарбоўвае яго, затым павялічвае колькасць радкоў на 2 і працягвае афарбоўваць яго, пакуль не дасягне апошняга радка набору даных.
9. Ужывайце макрас для перабору радкоў да пустой ячэйкі ў Excel
Калі вы хочаце, каб ваш код працаваў так, як ён будзе перабіраць усе радкі табліцы і спыняцца, калі дасягне пустой ячэйкі , тады гэты раздзел для вас. Вы можаце выканаць гэтую задачу як з дапамогай цыклу FOR , так і з дапамогай цыклу Do-Until у Excel VBA .
9.1. З цыклам FOR
Крокі прагляду радкоў у табліцы да пустой ячэйкі з цыклам FOR у VBA Excel прыведзены ніжэй.
Крокі:
- Спачатку адкрыйце Рэдактар Visual Basic з укладкі Распрацоўшчык і Устаўце Модуль у акне кода.
- Пасля гэтага скапіруйце наступны код і ўстаўце яго ў акно кода.
8725
Цяпер ваш код гатовы да запуску.
- Затым, запусціце макрас, а вынік паказаны ў gif-файле ніжэй.
Пасля запуску макраса ён пачаў праглядваць усе радкі ў табліцы і як толькі ён дасягнуў пустой ячэйкі, ячэйкі B8 , ён спыніў ітэрацыю .
Тлумачэнне кода VBA
2706
Вызначце зменную.
2375
Выключыце падзею абнаўлення экрана.
9653
Захоўвайце ўсе радкі, пачынаючы з Вочка B4 да апошняга.
4604
Абярыце Вочка B4 .
For Each iCol In iObj.ListColumns
Гэты фрагмент кода пачынае цыклічна праглядаць усе радкі. Калі ён знаходзіць пустую ячэйку ў радку, выбірае яе і працягвае сканаваць радкі, пакуль не дасягне канца.
3424
Уключыць падзею абнаўлення экрана.
9.2. З дапамогай цыкла Do-Until
Крокі для прагляду радкоў да пустой ячэйкі з цыклам Do-Until у VBA прыведзены ніжэй.
Крокі:
- Спачатку адкрыйце Рэдактар Visual Basic з укладкі Распрацоўшчык і Устаўце Модуль у акне кода.
- Затым скапіруйце наступны код і ўстаўце яго ў акно кода.
1219
Цяпер ваш код гатовы да запуску.
- Пазней запусціце макрас. Вынік паказаны ў наступным малюнку.
Пасля запуску макраса ён пачаў праглядваць усе радкі ў табліцы і адзін раз ён дасягнуў пустой ячэйкі, ячэйкі B8 , ён спыніў ітэрацыю .
Код VBAТлумачэнне
2555
Абярыце ячэйку, з якой мы будзем працаваць.
5803
Пачынае і працягвае цыкл, пакуль не будзе знойдзена пустая ячэйка.
9117
Калі пустая ячэйка знойдзены ў радку, затым выберыце яго і спыніце ітэрацыю.
10. Макрас VBA для перабору радкоў да некалькіх пустых вочак у Excel
У папярэднім раздзеле вы даведаліся, як спыніць цыкл, калі знойдзена пустая ячэйка. Але што рабіць, калі вы не жадаеце спыняць ітэрацыю, пакуль не будзе знойдзена некалькі пустых вочак, а не адна.
Крокі прагляду радкоў, пакуль у табліцы не будзе знойдзена некалькі пустых вочак з VBA Excel паказаны ніжэй.
Крокі:
- Спачатку адкрыйце Рэдактар Visual Basic з Укладка Распрацоўшчык і Устаўце Модуль у акно кода.
- Затым скапіруйце наступны код і устаўце яго ў акно кода.
6287
Цяпер ваш код гатовы да выканання.
- Зараз, Запусціце макрас і ўбачыце наступны gif для выхаду.
Пасля запуску макраса ён не спыніўся на першая пустая ячэйка, ячэйка B8 . Ён спыніўся, калі выявіў дзве паслядоўныя пустыя ячэйкі ў ячэйцы B16 .
Тлумачэнне кода VBA
6216
Выберыце ячэйку з якой мы будзем працаваць.
5712
Пачынае і працягвае цыкл, пакуль не будуць знойдзены дзве паслядоўныя пустыя ячэйкі.
9287
Калі знойдзены дзве паслядоўныя пустыя ячэйкі, товыберыце яго і спыніце ітэрацыю.
11. Убудаваць VBA для прагляду радкоў, аб'ядноўваючы ўсе слупкі да пустых у Excel
Гэты раздзел пакажа вам, як праглядаць усе радкі ў табліцы і аб'ядноўваць усе слупкі да пустой ячэйкі знаходзіцца ў VBA Excel.
Давайце даведаемся, як зрабіць гэта з дапамогай макраса VBA у Excel.
Крокі:
- Спачатку адкрыйце Рэдактар Visual Basic з укладкі Распрацоўшчык і Устаўце Модуль у акне кода.
- Затым скапіруйце наступны код і ўстаўце яго ў акно кода.
6666
Ваш код зараз гатовы да запуску.
- Пазней запусціце макрас і паглядзіце наступны gif для выніку.
Як вы бачыце з прыведзенага вышэй малюнка, ёсць усплывальнае акно MsgBox , якое паказвае вам аб'яднанае значэнне ўсіх слупкоў, якія знаходзяцца ў кожным радок з табліцы вашага ліста Excel. Але ён спыніўся, калі дасягнуў пустой ячэйкі .
Тлумачэнне кода VBA
2373
Вызначце зменныя.
4557
Усталюйце імя аркуша, з якім мы будзем працаваць (“ ConcatenatingAllColUntilBlank ” - гэта імя аркуша ў кнізе).
4212
Вызначце дыяпазон, з якім мы будзем працаваць.
8372
Гэты фрагмент кода запускае цыкл з масівам. Ён працягвае цыкл, пакуль не верне найбольшы індэкс масіва і ніжнюю мяжу масівапершае вымярэнне. Затым ён уступае ў ітэрацыю вылучэння ніжняй мяжы другога вымярэння. Пасля гэтага ён перадае ўсе вынятыя значэнні ў зменную iResult , аб'ядноўваючы іх і кідаючы вынік у MsgBox. Ён працягвае рабіць гэта, пакуль не знойдзе пустую ячэйку.
Выснова
У заключэнне, гэты артыкул паказаў вам 11 эфектыўных метадаў таго, як перабіраць радкі. табліцы ў Excel з макрасам VBA . Я спадзяюся, што гэты артыкул быў для вас вельмі карысным. Не саромейцеся задаваць любыя пытанні па тэме.
на ўкладку Распрацоўшчык -> Visual Basic, каб адкрыць Рэдактар Visual Basic.
- Далей ва ўсплываючым акне кода з у радку меню націсніце Уставіць -> Модуль .
- Затым скапіруйце наступны код і ўстаўце яго ў код акно.
3225
Ваш код гатовы да запуску.
- Цяпер націсніце F5 на вашым з клавіятуры або ў радку меню абярыце Выканаць -> Запусціце Sub/UserForm . Вы таксама можаце проста націснуць на маленькі значок Play у радку падменю, каб запусціць макрас.
- Або каб візуальна прасачыць і параўнаць набор даных і вынік, вы можаце захаваць код і вярнуцца да працоўнага ліста , які вас цікавіць.
- Адтуль вы можаце націснуць Макрасы на ўкладцы Распрацоўшчык , выберыце імя макраса , а затым націсніце Выканаць .
Пасля паспяховага выканання кода паглядзіце на gif вышэй, каб убачыць вынік. З'явіцца ўсплывальнае акно MsgBox , якое паказвае нумар ячэйкі для кожнай ячэйкі з кожнага радка з табліцы ў вашым аркушы Excel.
Тлумачэнне кода VBA
4906
Каб атрымаць нумар апошняга радка ў табліцы шляхам пошуку ў слупку B.
2155
Усталюйце нумар радка 4, з якога пачынаюцца нашы даныя.
3620
Для цыкла з першага радка.
2831
Усталюйце слупок нумар 2, з якога пачынаюцца нашы дадзеныя.
6236
Пачніце цыкл праз радкі, каб атрымаць апошнінумар слупка шляхам ацэнкі бягучага радка да апошняга радка.
2002
Павелічэнне цыкла слупка ад першага радка да апошняга радка.
2065
Гэты фрагмент кода працуе для апрацоўкі, павялічваючы пасля кожнага ітэрацыя і адлюстраванне выніку кода.
Больш падрабязна: Як аўтаматычна дадаць новы радок у табліцу Excel
2 . Рэалізуйце VBA для прагляду кожнай ячэйкі ў кожным радку па значэнні
Калі вы хочаце прайсці па кожнай ячэйцы ў кожным радку табліцы і перадаць значэнне, якое знаходзіцца ў ячэйках, у якасці вяртанага значэння , тады гэты раздзел дапаможа вам высветліць, як зрабіць гэта з дапамогай VBA Excel.
Вы можаце зрабіць гэта з дапамогай ListObject і з дапамогай DataBodyRange уласцівасць VBA . Мы пакажам вам код макраса з аб'ектам і ўласцівасцю.
2.1. З ListObject
Крокі прагляду кожнай ячэйкі ў кожным радку табліцы па значэнні ячэйкі з ListObject у VBA Excel прыведзены ніжэй.
Крокі:
- Такім жа чынам адкрыйце Visual Basic Editor з укладкі Распрацоўшчык і Устаўце Модуль у акно кода.
- Затым у акне кода скапіруйце наступны код і ўстаўце гэта.
5025
Цяпер ваш код гатовы да запуску.
- Пасля гэтага запусціце макрас як мы паказалі вам у раздзеле вышэй. Вынік паказаны ў gifніжэй.
З'явіцца ўсплывальнае акно MsgBox , якое паказвае значэнне кожнай ячэйкі з кожнага радка з табліцы ў вашым аркушы Excel.
Тлумачэнне кода VBA
5081
Вызначце зменныя.
4954
Гэты фрагмент кода спачатку пачынае перабіраць радкі ў табліцы (« TblStudents » - назва нашай табліцы). Затым уводзіць слупкі для кожнага радка. Пасля гэтага перадайце значэнне ячэйкі ў MsgBox. Затым перайдзіце да наступнага слупка. Пасля завяршэння ітэрацыі па ўсіх слупках аднаго радка ён пераходзіць да наступнага радка і працягвае працэс ітэрацыі да апошняга радка.
2.2. З дапамогай уласцівасці DataBodyRange
Каб быць больш канкрэтнымі з вынятымі дадзенымі з табліцы, вы можаце выкарыстоўваць уласцівасць DataBodyRange ListObject . Уласцівасць DataBodyRange выдасць вам вынік, які змяшчае дыяпазон са спісу паміж радком загалоўка і радком устаўкі.
Крокі таго, як вы можаце перабіраць кожную ячэйку ў кожным радку табліцы па значэнні ячэйкі з DataBodyRange у VBA Excel прыведзены ніжэй.
Крокі:
- Як паказана раней адкрыйце Рэдактар Visual Basic з укладкі Распрацоўшчык і Устаўце Модуль у акно кода.
- Затым , скапіруйце наступны код і ўстаўце яго ў акно кода.
7110
Цяпер ваш код гатовы да выканання.
- Пазней, Запусціце макрас і паглядзіце на наступны gif, каб убачыць вынік.
З'явіцца ўсплывальнае акно MsgBox паказвае вам значэнне кожнай ячэйкі з кожнага радка з табліцы ў вашым аркушы Excel.
Тлумачэнне кода VBA
8599
Вызначце зменную.
8401
Гэты фрагмент кода спачатку пачынае перабіраць радкі ў табліцы (“ TblStdnt ” - імя нашай табліцы) і вяртае дыяпазон значэнняў, за выключэннем радок загалоўка табліцы. Затым перадайце значэнне дыяпазону ў MsgBox. Затым ён пераходзіць да наступнага радка, каб атрымаць дыяпазон, і працягвае працэс ітэрацыі да апошняга радка.
3. Ужывайце макрас VBA для перабору радкоў шляхам аб'яднання слупкоў у Excel
У гэтым раздзеле будзе паказана, як перабіраць радкі ў табліцы шляхам аб'яднання слупкоў з першым слупком з вашага набору даных у Excel.
Напрыклад, для нашага набору даных, спачатку мы будзем перабіраць Джон у ячэйцы B5 і 101 у ячэйцы C5 , аб'ядноўваючы іх, а затым перабіраючы Джон у ячэйцы B5 і 89 у ячэйцы D5 шляхам аб'яднання іх з радка 5 .
Давайце пакажам вам, як вы можаце зрабіць гэта з Макрас VBA у Excel.
Крокі:
- Спачатку адкрыйце Рэдактар Visual Basic з Укладка «Распрацоўшчык і Устаўце Модуль у акно кода.
- Па-другое, у акне кода скапіруйце наступнае коді ўстаўце яго.
7965
Цяпер ваш код гатовы да выканання.
- Па-трэцяе, Запусціце макрас. Паглядзіце на малюнак ніжэй, каб убачыць вынік.
З'явіцца ўсплывальнае акно MsgBox , у якім будзе паказана злучанае значэнне ячэек з першага і другога слупкоў ( Джон у ячэйцы B5 са слупка B і 101 з ячэйкі C5 са слупка C ), а затым злучанае значэнне ячэек з першага і трэцяга слупка ( Джон у ячэйцы B5 са слупка B і 89 у ячэйцы D5 са слупка D ) радка нумар 5 з вашага набору даных. І гэтая аперацыя канкатэнацыі будзе працягвацца, пакуль не дасягне апошняга радка табліцы.
Тлумачэнне кода VBA
2021
Вызначце зменную.
2997
Затым код выбірае табліцу з актыўнага аркуша (“ TblConcatenate ” у назве нашай табліцы).
6156
Пасля гэтага пачынаецца ітэрацыя кожнага радка, за выключэннем загалоўка слупок. Калі ітэрацыя знаходзіць супадзенне ў дыяпазоне паміж загалоўкам слупка і радкамі, яна захоўвае значэнне ў зменнай iValue .
7375
Калі вышэйзгаданая ўмова не выконваецца, то код кідае значэнне ў MsgBox і завяршае ўмову. Пасля гэтага ён пераходзіць да цыклу ў іншым дыяпазоне і працягвае ітэрацыі да канца радка. Дасягнуўшы канцавога радка, макрас завяршае выкананне кода.
4. Убудаваць макрас для ітэрацыіпраз радкі шляхам аб'яднання ўсіх слупкоў у табліцы ў Excel
У гэтым раздзеле мы даведаемся, як аб'яднаць усе слупкі, якія змяшчае кожны радок у наборы даных, з VBA макрас у Excel.
Крокі для выканання, якія паказаны ніжэй.
Крокі:
- Спачатку адкрыйце Рэдактар Visual Basic з укладкі Распрацоўшчык і Устаўце Модуль у акно кода.
- Затым, скапіруйце наступны код і ўстаўце яго ў акно кода.
5804
Цяпер ваш код гатовы да выканання.
- Далей, Запусціце код макраса.
Як вы бачыце з прыведзенага вышэй gif, ёсць усплывальнае акно MsgBox , якое паказвае аб'яднанае значэнне ўсіх слупкоў, якія знаходзяцца ў кожным радку з табліцы вашага аркуша Excel.
Тлумачэнне кода VBA
9624
Вызначце зменныя.
8413
Усталюйце імя аркуша, з якім мы будзем працаваць (“ ConcatenatingAllCol ” - гэта імя аркуша у працоўным сшытку).
1471
Дз дакладнае імя табліцы, з якой мы будзем працаваць (“ TblConcatenateAll ” гэта імя табліцы ў нашым наборы даных).
2372
Пачынае ітэрацыю па кожным радку табліцы.
8944
Пачынае ітэрацыю па кожным слупку кожнага радка табліцы.
1690
Захаваць вынік шляхам перасячэння значэнняў, якія нясе кожны слупок кожнага радка. Пасля сканавання ўсіх слупкоў, якія знаходзяцца ў кожным радку, ён прайшоўвынік у MsgBox. Затым зноў пачынае цыкл у наступным радку і працягвае цыкл, пакуль не дасягне апошняга радка табліцы.
Дадатковая інфармацыя: Як сартаваць некалькі слупкоў табліцы з дапамогай Excel VBA (2 метады)
5. Спыніць ітэрацыю, калі значэнне знойдзена шляхам прагляду радкоў табліцы з дапамогай макраса VBA
Выкажам здагадку, што вы хочаце прайсці па радках вашай табліцы і спыніць цыкл, калі ён знаходзіць пэўнае значэнне . Вы можаце зрабіць гэта з дапамогай простага кода макраса.
Давайце даведаемся, як гэта зрабіць VBA у Excel.
Крокі:
- Спачатку адкрыйце Рэдактар Visual Basic з укладкі Распрацоўшчык і Устаўце Модуль у акне кода.
- Затым у акне кода скапіруйце наступны код і ўстаўце яго.
6536
Цяпер ваш код гатовы да выканання .
- Пазней запусціце макрас.
- Ён запусціць цыкл і спыніць яго, калі ён знаходзіць канкрэтнае значэнне (“ Edge ”) у дыяпазоне і кідае вынік у MsgBox .
Як вы можаце бачыць на малюнку вышэй, ёсць усплывальнае акно MsgBox, якое паказвае адрас ячэйкі, $B$10 , дзе мы знайшлі вызначанае значэнне, “ Edge ” .
Тлумачэнне кода VBA
2631
Вызначце зменная.
8219
Гэты фрагмент кода прызначаны для прагляду радкоў ад 1 да 15. Калі ён знаходзіць канкрэтнае слова“ Edge ”, то ён перадае вынік з адрасам ячэйкі, якая змяшчае слова. Ён працягвае рабіць гэта, пакуль не скончыць сканіраванне ўсіх даных з радкоў 1 па 15 у пошуку слова.
Дадатковая інфармацыя: Як уставіць або выдаліць радкі і слупкі з табліцы Excel
6. VBA для прагляду кожнага радка і афарбоўвання пэўнага значэння ў Excel
Што рабіць, калі вы не жадаеце кідаць адрас ячэйкі ўказанага значэння ў MsgBox? Вы можаце пафарбаваць ячэйку, якая змяшчае патрэбнае значэнне .
Давайце даведаемся, як гэта зрабіць з дапамогай VBA макраса.
Крокі:
- Такім жа чынам адкрыйце Рэдактар Visual Basic з укладкі Распрацоўшчык і Устаўце Модуль у акне кода.
- Затым скапіруйце наступны код і ўстаўце яго ў акно кода.
2085
Цяпер ваш код гатовы да запуску.
- Пасля гэтага запусціце макрас.
- Ён запусціць цыкл і спыніць яго, калі знойдзе пэўнае значэнне (“ Edge ”) у дыяпазоне і афарбуе ячэйку з дапамогай ColourIndex , які вы ўвялі ў кодзе.
Як бачна на малюнку вышэй, C ell B10 , дзе мы знайшлі ўказанае значэнне, “ Edge ” афарбоўваецца пасля выканання кода.
Тлумачэнне кода VBA
9182
Вызначце