Создание нового pdf-документа с помощью AcroEXch в VBScript

Я хочу автоматизировать преобразование листа Excel в документ PDF (я не хочу вручную распечатывать отчет, созданный в Excel, в виде документа PDF каждое утро). На данный момент я хотел бы создать кнопку в Excel, которая будет запускать макрос для автоматического создания документа PDF, но эта кнопка в конечном итоге не будет использоваться.

Я также новичок в VB, но прочитал AcroEXch SDK. Похоже, я должен использовать AcroEXch.PDDoc.Create, но это не совсем правильно (потому что я не могу указать входной файл для печати/создания в виде нового pdf-документа).

Любые идеи о том, как я могу создать новый файл PDF? Заранее спасибо.


person Community    schedule 20.10.2008    source источник


Ответы (3)


Я думаю, что нашел ответ. Вот одно решение, которое предложил кто-то на работе (если кто-то найдет его полезным, то отлично).

В классе AcroEXch нет доступного метода (или набора известных мне методов) для преобразования не-pdf-файла в pdf-файл. Вместо этого вы должны использовать pdf Distiller, чтобы сначала преобразовать файл в postscript, а затем вы можете записать в pdf, используя класс PDFDistiller. Вот фрагмент кода:

'1. open excel преобразуется в pdf:
xlReport.activate xlReport.range("a1").select

тусклый PdfFilePath PdfFilePath = ""

тусклый PsFilePath PsFilePath = ""

2. Печать файла Excel в файл PostScript xlBook.activesheet.PrintOut , , 1, , "Adobe PDF на Ne01:" ,TRUE, , PsFilePath

Dim oDistiller Set oDistiller = CreateObject("PDFDistiller.PDFDistiller.1")

oDistiller.FileToPDF sPsFilePath, sPdfFilePath, ""

' Закрыть Excel - не сохранять. 'ЗАКОММЕНТИРОВАНО НИЖЕ 3 СТРОК ДЛЯ ОТЛАДКИ xlApp.displayalerts=false xlApp.quit set xlApp=nothing

person Community    schedule 21.10.2008

Я не знаю точно, каковы ваши обстоятельства и к каким инструментам у вас есть доступ, но, читая ваше описание, похоже, что вы просто хотите, чтобы файл Excel был преобразован для вас одним щелчком мыши.

Было бы полезно, если бы вы указали, есть ли у вас Adobo Acrobat Professional, последняя версия Excel или другие конвертеры, доступные на рынке.

Если у вас установлен Acrobat Pro, в ваших офисных приложениях (word, excel, outlook и т. д.) уже должна быть кнопка «Преобразовать в PDF» на панели инструментов в сочетании с Аргумент командной строки Excel не должно быть слишком сложно создать запланированное задание Windows, которое периодически конвертирует файлы Excel.

person Community    schedule 21.10.2008

Рассматривали ли вы CuteFTP или PDFCreator, оба бесплатны. Я успешно использовал PDFCreator с VBA и слышал, что CuteFTP хорош.

person Community    schedule 21.10.2008