You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为批量Word转PDF VBS脚本添加书签导出功能?

批量Word转PDF并导出书签的VBS脚本修改方案

原脚本可后台批量将Word文档转为PDF,但默认导出的PDF不包含书签。通过修改代码使用Word的ExportAsFixedFormat方法并配置书签参数,即可实现导出带书签的PDF,同时保持后台无窗口运行。

修改后的完整脚本:

'Convert .doc or .docx to .pdf files with bookmarks via Send To menu
Set fso = CreateObject("Scripting.FileSystemObject")

For i= 0 To WScript.Arguments.Count -1
   docPath = WScript.Arguments(i)
   docPath = fso.GetAbsolutePathName(docPath)
   If LCase(Right(docPath, 4)) = ".doc" Or LCase(Right(docPath, 5)) = ".docx" Then
      Set objWord = CreateObject("Word.Application")
      pdfPath = fso.GetParentFolderName(docPath) & "\" & _
                fso.GetBaseName(docpath) & ".pdf"
      objWord.Visible = False
      Set objDoc = objWord.documents.open(docPath)
      
      ' 使用ExportAsFixedFormat导出带书签的PDF
      objDoc.ExportAsFixedFormat _
          OutputFileName:=pdfPath, _
          ExportFormat:=17, ' wdExportFormatPDF
          OpenAfterExport:=False, _
          OptimizeFor:=0, ' wdExportOptimizeForPrint
          Range:=0, ' wdExportAllDocument
          Item:=0, ' wdExportDocumentContent
          IncludeDocProps:=True, _
          KeepIRM:=True, _
          CreateBookmarks:=1, ' wdExportCreateHeadingBookmarks
          DocStructureTags:=True, _
          BitmapMissingFonts:=True, _
          UseISO19005_1:=False
      
      objDoc.Close
      objWord.Quit   
   End If   
Next

关键改动说明

  • 替换原SaveAs方法为ExportAsFixedFormat:该方法支持更细致的PDF导出配置,包括书签选项
  • CreateBookmarks:=1:指定根据Word文档中的标题样式创建PDF书签(对应Word内置常量wdExportCreateHeadingBookmarks)
  • 其他参数保持默认优化设置,确保导出的PDF完整保留文档属性、结构标签等信息
  • 保持objWord.Visible = False,确保转换过程在后台完成,不会弹出Word窗口

内容的提问来源于stack exchange,提问作者Sandra

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 04:50:25