![]() |
|
Проблемы с форматированием при выгрузке из 1С в эксель | ☑ | ||
---|---|---|---|---|
0
happysan
25.04.13
✎
13:46
|
Рег. задание выгружает отчет в эксель и отправляет по почте. Периодически слетают форматирования(поля, отступы и т.д.). Вот код, что не так?
Каталог=КаталогВременныхФайлов(); ИмяФайла="Табель учета рабочего времени.xlsx"; Попытка ТабДокумент.Записать(Каталог+ИмяФайла,ТипФайлаТабличногоДокумента.XLSX); ИмяТемпФайла = Каталог+ИмяФайла; Попытка ExcelApp = Новый COMОбъект("Excel.Application"); ExcelApp.DisplayAlerts=Ложь; ЗапущенExcel = Истина; Исключение ЗаписьЖурналаРегистрации("РассылкаТабелейУРВ",,,ОписаниеОшибки(),"ошибка"); ЗапущенExcel = Ложь; ExcelApp = ""; Сообщить("MS Excel не загружен!",статусСообщения.Внимание); КонецПопытки; ЗаписьЖурналаРегистрации("РассылкаТабелейУРВ",,,ЗапущенExcel,"ЗапущенExcel"); Если ЗапущенExcel Тогда Попытка // открываем файл ПолнИмяФайла=Каталог+"Табель учета рабочего времени.xls"; Book = ExcelApp.Workbooks.Open(ПолнИмяФайла); ВходнойФайлОткрыт = Истина; Исключение ЗаписьЖурналаРегистрации("РассылкаТабелейУРВ",,,ОписаниеОшибки(),"ошибка"); ExcelApp.Quit(); Сообщить("Ошибка открытия файла!"); ВходнойФайлОткрыт = Ложь; КонецПопытки; ЗаписьЖурналаРегистрации("РассылкаТабелейУРВ",,,ВходнойФайлОткрыт,"ВходнойФайлОткрыт"); Если ВходнойФайлОткрыт Тогда Попытка Book.ActiveSheet.PageSetup.Orientation = 2; //1-портрет, 2 - альбомная Book.ActiveSheet.PageSetup.BottomMargin = ExcelApp.InchesToPoints(0); Book.ActiveSheet.PageSetup.LeftMargin = 0; Book.ActiveSheet.PageSetup.RightMargin = 0; Book.ActiveSheet.PageSetup.TopMargin = ExcelApp.InchesToPoints(0.393700787401575); Book.ActiveSheet.PageSetup.CenterHorizontally = Истина; Book.ActiveSheet.PageSetup.Zoom=Ложь; Book.ActiveSheet.PageSetup.FitToPagesWide =1; Book.ActiveSheet.PageSetup.FitToPagesTall =КоличествоСтраниц; //Book.ActiveSheet.PageSetup.FitToPagesWide =1; Book.Save(); Исключение КонецПопытки; КонецЕсли; Попытка ExcelApp.UserControl = Истина; //ExcelApp.SaveChanges = Ложь; ExcelApp.workbooks.close(); //ExcelApp.ActiveBook.Close(); ExcelApp.Application.Quit(); ExcelApp.Quit(); Исключение КонецПопытки; КонецЕсли; Исключение ИмяФайла=""; ТекстСообщения = "Для подразделения "+Стр.Подразделение+" у не может быть записан файл табеля!"; КонецПопытки; Если ИмяФайла<>"" Тогда Файлы=НайтиФайлы(Каталог,ИмяФайла); Если Файлы.Количество()=0 тогда ИмяФайла=""; КонецЕсли; КонецЕсли; АдресЭлПочты = Стр.АдресЭлПочты; КонецЕсли; ОтправитьПочтовоеСообщение_Табель(УчетнаяЗапись, ТекстСообщения, СокрЛП(АдресЭлПочты), ТемаСообщения,Каталог,ИмяФайла); |
|||
1
aka AMIGO
25.04.13
✎
13:49
|
а это допустимо - смешивать два вида документов: xlsx и xls ?
|
|||
2
happysan
25.04.13
✎
13:53
|
(1) не сталкивался с этим, не могу сказать, думаешь из-за этого?
|
|||
3
happysan
25.04.13
✎
13:54
|
(1)хотя бывает, что всё корректно формируется. То есть проблема эпизодическая.
|
|||
4
happysan
25.04.13
✎
14:55
|
нужны мнения
|
|||
5
happysan
25.04.13
✎
15:16
|
ну где же мегамозг?
|
|||
6
happysan
25.04.13
✎
17:11
|
Кажется сам догадался, попробую задать форматирование уже на исходном табдокументе и не надо будет открывать в эксель, ведь именно из-за этого скорее всего проблемы.
|
|||
7
Ctrekoza
25.04.13
✎
17:14
|
А платформа какая, я читала про такой косяк на новой платформе 2.18.
|
|||
8
happysan
25.04.13
✎
17:52
|
(7)1С:Предприятие 8.2 (8.2.17.143)
|
|||
9
happysan
25.04.13
✎
17:53
|
(7) есть ссылка почитать?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |