【发布时间】:2017-02-08 14:20:45
【问题描述】:
我正在尝试将文件另存为 PDF。我的原始代码可以保存为 word 文档..
Imports Word = Microsoft.Office.Interop.Word
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, e As System.EventArgs) Handles MyBase.Load
Dim objDoc As Word.Document = objWordApp.Documents.Open(appPath & "\PackListTemplate.dotm", [ReadOnly]:=True)
objDoc = objWordApp.ActiveDocument
With objDoc
...
.SaveAs2(FileName:=savepath & soNumber & "_" & localDateTimeFileName & ".doc", AddToRecentFiles:=True, ReadOnlyRecommended:=True)
这就是我试图将我的代码更改为...
.SaveAs2(savepath & "Packing Lists - " & soNumber & ".pdf", Word.WdSaveFormat.wdFormatPDF, AddToRecentFiles:=True, ReadOnlyRecommended:=True)
问题是弹出应用程序另存为对话框。这并不理想,因为这应该是自动化的。当我使用FileName:= 时,一切都按我的预期工作。但是当我在 PDF 保存中使用该位时,由于某种原因它不喜欢我的Word.WdSaveFormat.wdFormatPDF。它强调了Word 中的W。
我在这里缺少什么?任何帮助表示赞赏!
【问题讨论】:
-
当我从 with 语句中分解代码时,问题随之而来...
objDoc.WdSaveFormat.wdFormatPDFobjDoc 中的 o 显示红色下划线,错误为“预期命名参数” -
最终将其声明为
Word.WdSaveFormat.wdFormatPDF并使用 close(false)。出于某种原因,当我关闭模板时,我不需要指定我不想保存,当我生成一个 doc 类型文件时。
标签: .net vb.net pdf office-interop