Имя: Пароль:
1C
1С v8
ПакетОтображаемыхДокументов. Записать в xlsx без листов
0 wmonref
 
06.06.24
22:42
Собственно вопрос...
При выполнении
Пакет.Записать(СокрЛП(ИмяФайла)+".xlsx",ТипФайлаПакетаОтображаемыхДокументов.XLSX)
создается файл Excel с несколькими листами. А возможно ли создать файл только с одним листом?
И вообще можно как нибудь увидеть этот ПакетОтображаемыхДокументов до его сохранения?

Спасибо.
1 Мимохожий Однако
 
07.06.24
06:57
Попробуй вместо Пакета использовать ТабличныйДокумент
2 АНДР
 
07.06.24
07:25
Укажи в настройках Excel количество листов в новой книге.
3 Ёпрст
 
07.06.24
09:27
(0)
да.  Помести туда пустой табличный документ, один:

ДокументExcel = Новый ПакетОтображаемыхДокументов;
НовыйЛист = ДокументExcel.Состав.Добавить();
НовыйЛист.Данные = ПоместитьВоВременноеХранилище(Новый ТабличныйДокумент); 
НовыйЛист.Наименование = "Вася";
ДокументExcel.Записать(ИмяФайла, ТипФайлаПакетаОтображаемыхДокументов.XLS);
4 wmonref
 
07.06.24
10:38
Есть такой код:

Пакет = Новый ПакетОтображаемыхДокументов;
Для Каждого ТекСтрока ИЗ ТЗ_Документов Цикл
   ТекДок = ТекСтрока.Документ.ПолучитьОбъект();
   ТабДокум = ТекДок.ПечатьЛиста();
   ЭлементПакета = Пакет.Состав.Добавить();
   ЭлементПакета.Данные = ПоместитьВоВременноеХранилище(ТабДокум, Новый УникальныйИдентификатор);
КонецЦикла;
Пакет.Записать(СокрЛП(ИмяФайла)+".xlsx",ТипФайлаПакетаОтображаемыхДокументов.XLSX)


Если в ТЗ_Документов есть 7 документов то создается файл Excel с 7 листами. Как создать файл с одним листом? Т.е. чтобы все ТабДоки были на одном листе Экселя
5 Ёпрст
 
07.06.24
10:47
(4) Очевидно, что запихивать всё в начале в один табличный документ. НО, если там разный порядок колонок (типа вложенных), такой док некорректно в xls запишется. Эксель не умеет вложенные области.
6 wmonref
 
07.06.24
11:13
(5) Именно так оно и есть (разный порядок колонок).
И я пробовал сначала запихнуть все в один ТабДок, но при сохранении в Эксель выходит коряво, и поэтому решил использовать ПакетОтображаемыхДокументов...
7 Ёпрст
 
07.06.24
11:58
(6) ну тогда, один путь  - сохранять в pdf или html
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший