|
Формирование ЭКсель файла. | ☑ | ||
|---|---|---|---|---|
|
0
antihacker
23.10.18
✎
06:12
|
Всем привет ! задача такая. Нужно создать эксель файл и добавить туда несколько листов. И на каждый лист копировать на каждый лист по отдельности вновь созданный табличный документ. Это возможно ?
|
|||
|
1
shadow_sw
23.10.18
✎
06:21
|
можно
|
|||
|
2
shadow_sw
23.10.18
✎
06:22
|
создай кучу эксель файлов, собери их в один
|
|||
|
3
antihacker
23.10.18
✎
06:29
|
Да файлов создавать могу. А как собрать в один файл ? Вот не могу найти ответ.....
|
|||
|
4
shadow_sw
23.10.18
✎
06:38
|
Файл = Новый COMОбъект("Excel.Application");
ФСО = Новый COMОбъект("Scripting.FileSystemObject"); ПутьКниги ="c:\temp\"+"123.xls"; СписокФайлов = Новый ТаблицаЗначений; СписокФайлов.Колонки.Добавить("Путь"); НС = СписокФайлов.Добавить(); НС.Путь ="c:\temp\" +"1.xls"; НС = СписокФайлов.Добавить(); НС.Путь ="c:\temp\"+"2.xls"; НС = СписокФайлов.Добавить(); НС.Путь ="c:\temp\"+"3.xls"; Файл.Visible = 0; Файл.DisplayAlerts = 0; Попытка Книга = Файл.Workbooks.Open(ПутьКниги); Исключение Книга = Файл.Workbooks.Add(); Книга.SaveAs(ПутьКниги); КонецПопытки; Для Каждого ФайлЛиста Из СписокФайлов Цикл НовоеИмяЛиста = ФСО.GetBaseName(ФайлЛиста.Путь); Попытка Лист = Файл.Workbooks.Open(ФайлЛиста.Путь); Исключение Продолжить; КонецПопытки; Если ФайлЛиста.Путь ="c:\temp\"+"1.xls" Тогда Лист.Worksheets(1).Name = "1"; Лист.Worksheets(1).Copy(Книга.Worksheets(1)); Лист.Close(0); КонецЕсли; Если ФайлЛиста.Путь ="c:\temp\"+"2.xls" Тогда Лист.Worksheets(1).Name = "2"; Лист.Worksheets(1).Copy(Книга.Worksheets(1)); Лист.Close(0); КонецЕсли; Если ФайлЛиста.Путь ="c:\temp\"+"3.xls" Тогда Лист.Worksheets(1).Name = "3"; Лист.Worksheets(1).Copy(Книга.Worksheets(1)); Лист.Close(0); КонецЕсли; Книга.Save(); КонецЦикла; Книга.Save(); Книга.Close(-1); Файл = 0; |
| Форум | Правила | Описание | Секции | Поиск |