gifts2017

Табличный документ в PDF (через Excel 2007)

Опубликовал Oleg Klypin (klypin) в раздел Программирование - Практика программирования

Пример сохранения табличного документа в PDF
Function ExcelToPDF(file) //file - полный путь файла .xls созданный средствами 1с
    Попытка
        Excel =  new  COMObject("Excel.Application");
    Исключение
        Сообщить("Не удалось преобразовать в pdf!!!");
        file="";
    КонецПопытки;
    Попытка  
        Excel.Workbooks.Open(file);
        Excel.ActiveSheet.PageSetup.zoom=false; //уместим на одной странице в ширину
        Excel.ActiveSheet.PageSetup.FitToPagesWide = 1; //уместим на одной странице в ширину
        Excel.ActiveSheet.PageSetup.FitToPagesTall = 10; //и на 10 в длину
        file=лев(file,стрдлина(file)-4)+".pdf"; //подменяем раширение
        Excel.ActiveWorkbook.ExportAsFixedFormat(0, File,0,false,false,,,false,); //сохраняем в pdf 
        //0-pdf, file-полный путь файла, 0 - стандартное качество
        Excel.Quit(); // закрываем Excel
    Исключение
        Excel.Quit();
        Сообщить("Не удалось преобразовать в pdf!!!");
        file="";
    КонецПопытки;
    возврат file;
EndFunction

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Тимофей Шантин (ShantinTD) 16.02.11 22:29
- Требует МС Офиса, то есть денег.
- Требует дополнительного действия: сохранение в эксель + конвертация в ПДФ

Лучше использовать виртуальный принтер PDF
2. Ийон Тихий (cool.vlad4) 16.02.11 22:42
(0) Баян более чем полностью...поиском научись пользоватся http://infostart.ru/public/57288/
Yashazz; artbear; +2 Ответить
3. Тимофей Шантин (ShantinTD) 17.02.11 16:23
Еще вспомнил, почему этого делать не стоит:
1. можно делать через ОпенОфис (все-таки бесплатно): так или так
2. Если в макете есть объединенные ячейки, то в экселе они, скорее всего, будут разделены, текст окажется обрезан. Так как PDF получается путем конвертации из XLS, то подправить содержимое этих ячеек будет уже весьма проблемно.
4. Яков Коган (Yashazz) 18.02.11 14:34
Воистину боян. Не говоря уж о том, что в масштабировании и настройке есть ещё ряд моментов, не освещённых тут.
Есть, кстати, PDF-конвертеры с замечательным com-интерфейсом, тындекс в помощь.
5. Ийон Тихий (cool.vlad4) 18.02.11 14:38
неплох кстати принтер Image Printer, с прозрачностью mxl-ской справляется на ура(в отличие от екселя, который прозрачность понимает только у mxl7.7)...надо будет простенький com там сделать.
ЗЫ была идея разобратся в формате mxl 8, благо он не самый сложный...но до того влом время тратить...
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа