zoukankan      html  css  js  c++  java
  • 使用VBA将批量的WORD文档转换为PDF

    Sub BatchConvertToPDF()
        Dim destFolderPath As String
        destFolderPath = GetFolderPath
        If destFolderPath <> Empty Then
            Dim path As Variant
            For Each path In GetFilePaths()
                Dim indexOfSlash, indexOfDot As Integer
                indexOfSlash = InStrRev(path, "")
                indexOfDot = InStrRev(path, ".")
                
                Dim destFilePath As String
                destFilePath = destFolderPath + Mid(path, indexOfSlash, indexOfDot - indexOfSlash) + ".pdf"
                
                ConvertToPDF path, destFilePath
            Next path
        End If
    End Sub
    
    Function GetFilePaths()
        Dim folderPath As String
        With Application.FileDialog(msoFileDialogFilePicker)
            .Filters.Add "word文件", "*.doc; *.dotx; *.docm"
            .Title = "请择要转换的word文件"
            If .Show = -1 Then
                Set GetFilePaths = .SelectedItems
            End If
        End With
    End Function
    
    Function GetFolderPath()
        Dim folderPath As String
        With Application.FileDialog(msoFileDialogFolderPicker)
            .AllowMultiSelect = False
            .Title = "请选择要存放的目录"
            If .Show = -1 Then
                GetFolderPath = .SelectedItems(1)
            End If
        End With
    End Function
    
    Sub ConvertToPDF(srcPath As Variant, destPath As String)
        Documents.Open FileName:=srcPath, ConfirmConversions:=False, _
            ReadOnly:=False, AddToRecentFiles:=False, PasswordDocument:="", _
            PasswordTemplate:="", Revert:=False, WritePasswordDocument:="", _
            WritePasswordTemplate:="", Format:=wdOpenFormatAuto, XMLTransform:=""
        ActiveDocument.ExportAsFixedFormat OutputFileName:= _
            destPath, ExportFormat:= _
            wdExportFormatPDF, OpenAfterExport:=False, OptimizeFor:= _
            wdExportOptimizeForOnScreen, Range:=wdExportAllDocument, From:=1, To:=1, _
            Item:=wdExportDocumentContent, IncludeDocProps:=True, KeepIRM:=True, _
            CreateBookmarks:=wdExportCreateNoBookmarks, DocStructureTags:=True, _
            BitmapMissingFonts:=True, UseISO19005_1:=False
        ActiveDocument.Close
    End Sub
    

      

  • 相关阅读:
    OAuth2.0认证和授权原理
    APNs详细使用步骤
    解决IDEA因分配内存而引起的卡顿
    JAVA 第二周学习总结
    JAVA 第一周学习总结
    Mac OS 上配置java开发环境
    【DP】【单调队列】洛谷 P2216 [HAOI2007]理想的正方形 题解
    【DP】【构造】NOIp模拟题 演讲 题解
    【2-SAT】【并查集】NOIp模拟题 植树方案 题解
    【字符串】【hash】【倍增】洛谷 P3502 [POI2010]CHO-Hamsters 题解
  • 原文地址:https://www.cnblogs.com/beta2013/p/3666077.html
Copyright © 2011-2022 走看看