Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как раскидать листы книги по отдельным файлам? / 9 сообщений из 9, страница 1 из 1
29.10.2012, 19:21
    #38017662
_11_22_33
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как раскидать листы книги по отдельным файлам?
Книга имеет 3 листа: ААА, БББ и ВВВ
Надо в добавление к ней создать 3 новых книги, в каждой из которых будет по одному из листов.
Пока делаю тупо: копирую исходную книгу в новый файл и в нём, в цикле, удаляю лишние листы. И так 3 раза.
Подозреваю, что как-то можно красивее - перебирать в цикле один раз листы исходной книги и сразу раскидывать её листы по новым книгам.
...
Рейтинг: 0 / 0
29.10.2012, 19:43
    #38017687
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как раскидать листы книги по отдельным файлам?
Код: vbnet
1.
2.
3.
For i = 1 To 3
  Worksheets(1).SaveAs "eeee" + CStr(i)
Next
...
Рейтинг: 0 / 0
29.10.2012, 19:47
    #38017691
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как раскидать листы книги по отдельным файлам?
Worksheets( i ) разумеется...
...
Рейтинг: 0 / 0
29.10.2012, 20:11
    #38017711
_11_22_33
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как раскидать листы книги по отдельным файлам?
Книги создаются...но в каждой тот же набор листов:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
xlsApp.Workbooks.Open ("C:\Main.xls")
Set xlsBook = xlsApp.ActiveWorkbook
intCountSource = xlsBook.Worksheets.Count 'число листов
For j = intCountSource To 1 Step -1
     xlsBook.sheets(j).SaveAs FileName:="C:\" & "Лист_" & xlsBook.sheets(j).Name
Next j
xlsBook.Close

правда в каждой из них фокус установлен на листе, который нужно скопировать.
...
Рейтинг: 0 / 0
29.10.2012, 20:29
    #38017720
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как раскидать листы книги по отдельным файлам?
странно, зачем же тогда листу этот метод...
ну тогда так:
Код: vbnet
1.
2.
3.
4.
5.
For i = 1 To 3
  Worksheets(i).Copy
  Workbooks(Workbooks.Count).SaveAs "v:\eeee" + CStr(i) + ".xls"
  Workbooks(Workbooks.Count).Close
Next
...
Рейтинг: 0 / 0
30.10.2012, 15:50
    #38018907
_11_22_33
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как раскидать листы книги по отдельным файлам?
Да, вот так заработало. Спасибо!
И, в развитии темы - а если надо раскидать листы так: ААА и ВВВ - каждый в отдельный файл, а листы БББ и ГГГ - в один?
...
Рейтинг: 0 / 0
30.10.2012, 16:12
    #38018955
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как раскидать листы книги по отдельным файлам?
А что вызывает затруднение?
...
Рейтинг: 0 / 0
30.10.2012, 16:55
    #38019059
_11_22_33
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как раскидать листы книги по отдельным файлам?
Вот эти строки:
Код: vbnet
1.
2.
Worksheets(i).Copy
  Workbooks(Workbooks.Count).SaveAs "v:\eeee" + CStr(i) + ".xls"

если перекидывается 2 листа. но в один файл, то как?
...
Рейтинг: 0 / 0
30.10.2012, 17:39
    #38019132
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как раскидать листы книги по отдельным файлам?
_11_22_33если перекидывается 2 листа. но в один файл, то как?блин, ну самому лень нажать "запись макроса" и посмотреть?
Код: vbnet
1.
Workheets(Array("Лист1", "Лист2")).Copy
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как раскидать листы книги по отдельным файлам? / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]