У наставку ћемо погледати програм у Екцел ВБА то увози листове из других Екцел датотека у једну Екцел датотеку.
Преузмите Боок4.клск, Боок5.клск и додајте их у "Ц: \ тест \"
Ситуација:
Додајте следеће линије кода командном дугмету:
1. Прво, декларишемо две променљиве типа Стринг, објекат радног листа и једну променљиву типа Интегер.
Дим директоријум као низ, име датотеке као низ, лист као радни лист, укупно као цео број
2. Искључите ажурирање екрана и приказивање упозорења.
Апплицатион.СцреенУпдатинг = Нетачно
Апплицатион.ДисплаиАлертс = Нетачно
3. Покрените директоријум променљиве. Користимо Дир функцију да пронађемо први *.кл ?? датотека ускладиштена у овом директоријуму.
директоријум = "ц: \ тест \"
филеНаме = Дир (директоријум и "*.кл ??")
Напомена: Функција Дир подржава употребу вишезначних (*) и једнозначних (?) Замјенских знакова за тражење свих различитих врста Екцел датотека.
4. Променљива филеНаме сада садржи назив прве Екцел датотеке која се налази у директоријуму. Додајте петљу До Вхиле.
Уради Док филеНаме ""
Лооп
Додајте следеће линије кода (на 5, 6, 7 и 8) у петљу.
5. Не постоји једноставан начин копирања радних листова из затворених Екцел датотека. Стога отварамо Екцел датотеку.
Воркбоокс.Опен (именик и име датотеке)
6. Увезите листове из Екцел датотеке у импорт-схеет.клсм.
За сваки лист у радним свескама (назив датотеке) .Радни листови
укупно = Радне свеске ("импорт-схеетс.клсм"). Радни листови.број
Радне свеске (назив датотеке). Радни листови (назив.налога). Копирај _
афтер: = Радне свеске ("импорт-схеетс.клсм"). Радни листови (укупно)
Следећи лист
Објашњење: варијабла тотал прати укупан број радних листова импорт-схеет.клсм. Користимо Цопи метод објекта Ворксхеет да бисмо копирали сваки радни лист и залепили га после последњег радног листа импорт-схеетс.клсм.
7. Затворите Екцел датотеку.
Радне свеске (назив датотеке) .Затвори
8. Дир функција је посебна функција. Да бисте добили остале Екцел датотеке, можете поново користити функцију Дир без аргумената.
име датотеке = Дир ()
Напомена: Када се више имена датотека не подударају, функција Дир враћа низ нулте дужине (""). Као резултат тога, Екцел ВБА ће напустити петљу До Вхиле.
9. Укључите ажурирање екрана и поновно приказивање упозорења (изван петље).
Апплицатион.СцреенУпдатинг = Тачно
Апплицатион.ДисплаиАлертс = Тачно
10. Тестирајте програм.
Резултат: