Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > Слияние таблиц в VBA


Автор: NightX 19.6.2006, 10:21
Товарисчи! Мне нужно написать программу для слияния 3х экселевских таблиц в одну таблицу. Написал код:
Код

Public Sub Слияние()
Dim sht As Sheets, wrks
'слияние
n = Worksheets("ПереченьКафедр").Range("A5:A7").CurrentRegion.Rows.Count
k = 5
For i = 3 To n
A = Worksheets("ПереченьКафедр").Cells(i, 2)
B = "C:\Documents and Settings\Симонов Павел\Рабочий стол\РГР\" + A
Set wrks = Workbooks.Open(B)
For j = 5 To 72
Workbooks("Кафедра.xls").Worksheets("ДоктораЮРиЭк").Cells(k, j) = Workbooks(A).Worksheets("ДоктораЮРиЭк").Cells(6, j)
Next j
wrks.Close
k = k + 1
Next i
End Sub

Таблица"ПереченьКафедр"-оттуда по идее должны браться названия 3х маленьких таблиц. 
C:\Documents and Settings\Симонов Павел\Рабочий стол\РГР\-путь к этим файлам.
Кафедра.xls-в этот файл надо слить эти 3 таблицы.
ДоктораЮРиЭк-название листа.
Вот. Почему то заполняются только первые строки из каждой таблицы в таблицу Кафедра.xls
Посмотрите пжлст код. И если че исправьте. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)