Овај чланак ће показати како се користи ВБА за копирање низа ћелија на други лист или радну свеску.
За више информација прочитајте наш ВБА водич за копирање и лепљење.
Копирај на постојећи лист
За копирање низа ћелија са једног листа на други лист који већ постоји можемо користити следећи код:
123456 | Суб ЦопиАндПастеАцтивеСхеет.Ранге ("А1: Д10"). ИзаберитеСелецтион.ЦопиТабеле („Лист 2“). ИзаберитеАцтивеСхеет.ПастеЕнд Суб |
Ово ће копирати информације ускладиштене у распону активних листова А1: Д10 и залепити их у постојећи Лист2. Пошто нисмо навели опсег за избор у листу 2, аутоматски ће га залепити у опсег („А1“). Такође ће залепити било које обликовање у Лист 2 које је било у опсегу у Табели 1.
Ако га желимо залепити на другу локацију у Таблици 2, можемо одабрати почетну ћелију или распон за лијепљење. Код испод ће залепити информације које почињу у ћелији Е2.
1234567 | Суб ЦопиАндПастеТоРангеАцтивеСхеет.Ранге ("А1: Д10"). ИзаберитеСелецтион.ЦопиТабеле („Лист 2“). ИзаберитеРаспон ("Е1"). ИзаберитеАцтивеСхеет.ПастеЕнд Суб |
Да бисмо само залепили вредности у Табелу 2 и не укључивали обликовање, можемо користити следећи код. Још једном, не морамо да специфицирамо опсег до странице ако желимо да га налепимо у ћелију А1.
123456 | Суб ЦопиАндПастеВалуесАцтивеСхеет.Ранге ("А1: Д10"). ИзаберитеСелецтион.ЦопиТабеле („Лист 2“). ИзаберитеСелецтион.ПастеСпециал Пасте: = клПастеВалуесЕнд Суб |
Копирај на нови лист
Да бисмо копирали, а затим залепили у нови лист, можемо користити следећи код:
123456 | Суб ЦопиАндПастеНевСхеетАцтивеСхеет.Ранге ("А1: Д10"). ИзаберитеСелецтион.ЦопиСхеетс.Адд Афтер: = АцтивеСхеетАцтивеСхеет.ПастеЕнд Суб |
Да бисмо само копирали вредности, можемо поново користити клПастеВалуес.
Копирајте у постојећу радну свеску
Да бисте у потпуности копирали и залепили у другу радну свеску, можемо имати већ отворене обе радне свеске или помоћу кода отворити другу радну свеску, а затим је залепити у ту радну свеску.
Овај код испод копира се у постојећу радну свеску која је већ отворена.
1234567 | Суб ЦопиАндПастеЕкистингБоокРаспон ("А1: Д10"). ИзаберитеСелецтион.ЦопиВиндовс ("ЦомбинедБранцхес.клск"). АктивирајтеСхеетс.Адд Афтер: = АцтивеСхеетАцтивеСхеет.ПастеЕнд Суб |
ВБА програмирање | Генератор кода ради за вас!
Овај доњи код ће се копирати и залепити у нови лист у другој радној свесци коју ће отворити код.
1234567 | Суб ЦопиАндПастеОпенВоркбоокРаспон ("А1: Д9"). ИзаберитеСелецтион.ЦопиВоркбоокс.Опен Филенаме: = "Ц: \ ЕкцелФилес \ ЦомбинедБранцхес.клск"Схеетс.Адд Афтер: = АцтивеСхеетАцтивеСхеет.ПастеЕнд Схеет |
САВЕТ: замените име датотеке у радним свескама. Отворите аргумент својим именом датотеке!
Копирај у нову радну свеску
Такође можемо копирати и залепити у нову радну свеску.
123456 | Суб ЦопиАндПастеНевВоркбоокРаспон ("А1: Д9"). ИзаберитеСелецтион.ЦопиВоркбоокс.АддАцтивеСхеет.ПастеЕнд Суб |