![]() |
![]() |
![]() |
|
Сохранения в PDF из Excel 2007 | ☑ | ||
---|---|---|---|---|
0
Santa4527
12.08.10
✎
17:08
|
Попытка
Excel = Новый COMОбъект("Excel.Application") ; Исключение Excel.Workbooks.Close(); Сообщить("Размещение файла недоступно или другая ошибка доступа.", СтатусСообщения.Важное); Возврат; КонецПопытки; Режим = "123йцу"; Excel.Application.Workbooks.Add(1); ПрайсКнига = Excel.Workbooks.Item(1); ПрайсЛист = Excel.ActiveSheet; ПрайсЛист.Name = "Первый"; ПрайсЛист.Cells(4, 2).Value = "Данные на дату: " + ТекущаяДата() + ". Прайс-лист действителен в течение одного дня."; ПрайсЛист.SaveAs("C:\" + Режим + ".pdf", "xlHtml"); Excel = Неопределено; НА компе стоит Excel 2007 он может сохранить в pdf. Пытаюсь программно это сделать, но не открывает файл pdf т.к. формат файл не поддерживается или файл поврежден. Может, кто делал, подскажите?????????? |
|||
1
BoCh
12.08.10
✎
17:09
|
Обязательно через excel или можно сразу в пдф?
|
|||
2
BoCh
12.08.10
✎
17:10
|
Всмысле, прайс только в екселе? или берутся из 1с данные?
|
|||
3
Santa4527
12.08.10
✎
17:11
|
(1)
Нужно excel сохранить в pdf (2) Беруться из 1С |
|||
4
borozavr
12.08.10
✎
17:14
|
(3) ПрайсЛист.SaveAs("C:\" + Режим + ".pdf", "xlHtml"); xlHtml-очень странный параметр для сохранения в PDF
|
|||
5
BoCh
12.08.10
✎
17:15
|
Для Windows у меня реализовано так
Попытка Принтер=Новый ComObject("Bullzip.PDFPrinterSettings"); принтер.SetValue("output", ИмяФайла); принтер.SetValue("ShowSaveAS", "never"); принтер.SetValue("ShowProgress", "no"); принтер.SetValue("ShowProgressFinished", "no"); принтер.SetValue("ShowSettings", "never"); принтер.SetValue("ShowPDF", "no"); принтер.SetValue("ConfirmOverwrite","no"); принтер.SetValue("OwnerPassword",""); принтер.SetValue("Permissions",61636); принтер.WriteSettings(); Таб.Автомасштаб=Истина; Таб.Имяпринтера="Bullzip PDF Printer"; Таб.Напечатать(Истина); PDFФайл = Новый Файл(ИмяФайла); Пока НЕ PDFФайл.Существует() Цикл ОбработкаПрерыванияПользователя(); КонецЦикла; Исключение Сообщить(ОписаниеОшибки()); Сообщить("Не установлен виртуальный принтер!"); КонецПопытки; для Linux Попытка Таб.ИмяПринтера = "Generic-CUPS-PDF-Printer"; Таб.Напечатать(Истина); Исключение Сообщить(ОписаниеОшибки()); Сообщить("Не установлен CUPS-PDF или не создан каталог PDF в домашней папке пользователя!"); КонецПопытки; В случае с виндой стоит BullZip PDF Printer |
|||
6
Santa4527
12.08.10
✎
17:19
|
А не через принтер виртуальный возможно!!!
|
|||
7
BoCh
12.08.10
✎
17:20
|
А я хз, у нас организация не настолько богатая, чтоб MS Office ставить =)
|
|||
8
mikecool
12.08.10
✎
17:20
|
закладка
|
|||
9
Santa4527
12.08.10
✎
17:21
|
(8)
Что "закладка"? |
|||
10
borozavr
12.08.10
✎
17:21
|
(5) для 2007 офиса есть родная скачиваемая надстройка от мелкомягких (в бете была в составе, но по требованию Adobe убрали),позволяющая сохранять в PDF без виртуального принтера, причем очень быстрая (попробуй отправить на виртуальник документ в 1000 листов).
|
|||
11
Нуф-Нуф
12.08.10
✎
17:22
|
узнал что офис2007 может сохранять в пдф... удивлен...
|
|||
12
borozavr
12.08.10
✎
17:27
|
(11) для неверующих: http://www.youtube.com/watch?v=liihH3v0Nak
|
|||
13
Liova
12.08.10
✎
17:29
|
Так! Смотрим тут: http://msdn.microsoft.com/en-us/library/bb241279(office.12).aspx
PDF-Format The pdf format is not listed here. However it has number 57. Так что тебе надо ПрайсЛист.SaveAs("C:\" + Режим + ".pdf", 57); |
|||
14
Santa4527
12.08.10
✎
17:32
|
(13)
Спасибо!!!! |
|||
15
Santa4527
12.08.10
✎
17:53
|
А как сохранить всю книгу, а не один лист в ПДФ? Как указать нужные параметры?
|
|||
16
Santa4527
12.08.10
✎
17:58
|
А как сохранить всю книгу, а не один лист в ПДФ?
|
|||
17
Santa4527
13.08.10
✎
11:30
|
Попытка
Excel = Новый COMОбъект("Excel.Application") ; Исключение Excel.Workbooks.Close(); Сообщить("Размещение файла недоступно или другая ошибка доступа.", СтатусСообщения.Важное); Возврат; КонецПопытки; Режим = "123йцу"; Excel.Application.Workbooks.Add(1); ПрайсКнига = Excel.Workbooks.Item(1); ПрайсЛист = Excel.ActiveSheet; ПрайсЛист.Name = "Первый"; ПрайсЛист.Cells(4, 2).Value = "Данные на дату: " + ТекущаяДата() + ". Прайс-лист действителен в течение одного дня."; ПрайсЛист.SaveAs("C:\" + Режим + ".pdf", 57); Excel = Неопределено; ВОПРОС. Как указать параметры в SaveAs, что бы сохранить всю книгу в PDF, а не один лист? |
|||
18
levlvov
13.08.10
✎
11:35
|
(17) у вас превышен лимит на количество вопросов за один час...
|
|||
19
Santa4527
13.08.10
✎
11:41
|
(18)
Это хорошо или плохо?) А по существу? |
|||
20
Santa4527
13.08.10
✎
12:08
|
В VD пишеться так
ChDir "C:\" ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _ "C:\?????-???? ??????? 3_PDF.pdf", Quality:=xlQualityMinimum, _ IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _ False в 1 с Пытаюсь написать так ПрайсЛист.SaveAs("C:\" + Режим + ".pdf","xlTypePDF","xlQualityMinimum","True","False","False"); {Форма.Форма(19)}: Ошибка при вызове метода контекста (SaveAs): Произошла исключительная ситуация (0x800a03ec) ПрайсЛист.SaveAs("C:\" + Режим + ".pdf","xlTypePDF","xlQualityMinimum","True","False","False"); |
|||
21
Santa4527
13.08.10
✎
12:09
|
в VB (Visual Basic)
|
|||
22
Santa4527
13.08.10
✎
12:18
|
Ап!!!!!
|
|||
23
Mikle Shaman
18.08.10
✎
16:55
|
Коллеги, а как бы еще так исхитрится чтобы при сохранении PDF не разбивал криво на листы. У меня, например, в Excel форма ТОРГ-12 горизонтально ориентированная, а при сохранении ее PDF тупо режет на 2 вертикальных листа. :(
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |