Skip to main content

如何在 Excel 中一次性將多個工作簿或工作表轉換為 PDF 文件?

Author: Xiaoyang Last Modified: 2025-05-12

當您希望分享數據的同時防止修改時,將 Excel 文件轉換為 PDF 是一項常見的任務。雖然 Excel 的「另存為」功能可以讓您將單個工作簿轉換為 PDF,但對於多個文件來說可能會非常耗時。本指南探討了各種方法,包括使用 VBA 程式碼和 Kutools for Excel,以快速一次性將多個工作簿或工作表轉換為 PDF 文件。


使用「另存為」功能逐一將多個工作簿轉換為 PDF 文件

通常情況下,Excel 中的「另存為」功能可以幫助您將整個工作簿保存為 PDF 文件,請按照以下步驟操作:

1. 打開要轉換為 PDF 格式的工作簿。

2. 點擊 「文件」>「另存為」,在「另存為」對話框中,指定一個保存新文件的文件夾,然後從「保存類型」下拉列表中選擇PDF,然後點擊「選項」按鈕,參見截圖:

A screenshot of the Save As dialog for converting Excel files to PDF one by one

3. 接著,在彈出的「選項」對話框中,勾選「所有的表」,參見截圖:

A screenshot of the Options dialog for saving Excel files as PDFs

4. 然後點擊「確定」>「保存」,這個完整的工作簿就已經保存為 PDF 文件格式了。

提示:如果您有多個工作簿需要轉換,請按照上述步驟逐一將工作簿保存為 PDF 文件。

使用 VBA 程式碼一次性將多個工作簿轉換為 PDF 文件

如果有數百個 Excel 文件需要轉換,上述方法會顯得麻煩。這裡我將介紹一種 VBA 程式碼,用於一次性將多個工作簿轉換為 PDF 文件,請按照以下步驟操作:

1. 按住 ALT + F11 鍵打開 Microsoft Visual Basic for Applications 視窗。

2. 點擊 「插入」>「模組」,並將以下程式碼粘貼到模組視窗中。

VBA 程式碼:一次性將多個工作簿轉換為 PDF 文件

Sub ExcelSaveAsPDF()
'Updateby Extendoffice
    Dim strPath As String
    Dim xStrFile1, xStrFile2 As String
    Dim xWbk As Workbook
    Dim xSFD, xRFD As FileDialog
    Dim xSPath As String
    Dim xRPath, xWBName As String
    Dim xBol As Boolean
    Set xSFD = Application.FileDialog(msoFileDialogFolderPicker)
    With xSFD
    .Title = "Please select the folder contains the Excel files you want to convert:"
    .InitialFileName = "C:\"
    End With
    If xSFD.Show <> -1 Then Exit Sub
    xSPath = xSFD.SelectedItems.Item(1)
    Set xRFD = Application.FileDialog(msoFileDialogFolderPicker)
    With xRFD
    .Title = "Please select a destination folder to save the converted files:"
    .InitialFileName = "C:\"
    End With
    If xRFD.Show <> -1 Then Exit Sub
    xRPath = xRFD.SelectedItems.Item(1) & "\"
    strPath = xSPath & "\"
    xStrFile1 = Dir(strPath & "*.*")
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    Do While xStrFile1 <> ""
        xBol = False
        If Right(xStrFile1, 3) = "xls" Then
            Set xWbk = Workbooks.Open(Filename:=strPath & xStrFile1)
            xbwname = Replace(xStrFile1, ".xls", "_pdf")
            xBol = True
        ElseIf Right(xStrFile1, 4) = "xlsx" Then
            Set xWbk = Workbooks.Open(Filename:=strPath & xStrFile1)
            xbwname = Replace(xStrFile1, ".xlsx", "_pdf")
            xBol = True
        ElseIf Right(xStrFile1, 4) = "xlsm" Then
            Set xWbk = Workbooks.Open(Filename:=strPath & xStrFile1)
            xbwname = Replace(xStrFile1, ".xlsm", "_pdf")
            xBol = True
        End If
        If xBol Then
            xWbk.ExportAsFixedFormat Type:=xlTypePDF, Filename:=xRPath & xbwname & ".pdf"
            xWbk.Close SaveChanges:=False
       End If
        xStrFile1 = Dir
    Loop
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
End Sub

3. 按下 F5 鍵運行程式碼,此時會顯示一個窗口,請選擇包含要轉換的工作簿的文件夾,參見截圖:

A screenshot showing folder selection for workbooks to convert to PDFs

4. 點擊「確定」,另一個窗口會彈出,請選擇要輸出新 PDF 文件的文件夾路徑,參見截圖:

A screenshot showing folder selection for outputting PDF files in Excel

5. 點擊「確定」,完成轉換後,您可以前往指定的文件夾查看轉換結果,參見截圖:

A screenshot of the original Excel files before conversion Arrow A screenshot of the output folder containing converted PDF files

使用強大的功能將多個工作簿轉換為 PDF 文件

如果您有 Kutools for Excel,利用其「批量轉換」工具,您可以快速一次性將多個工作簿轉換為 PDF 文件。

Kutools for Excel 提供超過 300 種進階功能,簡化複雜任務,提升創造力與效率。 結合 AI 能力,Kutools 能夠精準自動化任務,讓數據管理變得輕而易舉。Kutools for Excel 的詳細資訊...免費試用...

1. 點擊「Kutools Plus」>「工作簿」>「批量轉換」,參見截圖:

A screenshot of Kutools for Excel's Format Converter tool in Excel

2. 會彈出一個提示框,提醒您關閉要轉換的工作簿。

A screenshot of a reminder to close workbooks before conversion

3. 點擊「確定」,然後在「文件格式轉換器 」對話框中,指定以下選項:

  • 在「轉換類型」下拉列表中,選擇「Excel 到 PDF」;
  • 點擊「添加」按鈕選擇要轉換的 Excel 文件。您可以根據需要從電腦或 OneDrive 中選擇工作簿。

A screenshot of the File Format Converter dialog showing workbook selection options

4插入要轉換的工作簿後,仍在 文件格式轉換器 對話框中,請點擊 Output folder selection button 按鈕選擇一個文件夾路徑來輸出轉換後的文件,然後在對話框底部指定一些需要的操作,參見截圖:

A screenshot showing options to configure conversion settings

注意事項:在上述對話框中:
  • 若要包含子文件夾中的工作簿,請勾選「 添加文件夾時包含子文件夾」框;
  • 如果想在轉換後刪除原始文件,請勾選「 轉換後刪除源文件」框;
  • 如果想保留原始文件的修改時間,請勾選「保留源文件的修改時間」框;
  • 通過勾選「轉換時保留文件的目錄結構」框,可以保留文件的目錄結構;

5. 然後點擊「確定」開始轉換。所有指定的 Excel 文件轉換為 PDF 後,前往指定的文件夾查看結果。參見以下截圖:

A screenshot of the original Excel files before conversion Arrow A screenshot of the output folder containing converted PDF files

Kutools for Excel - 超過 300 種必備工具,讓 Excel 功能更強大。永久免費享受 AI 功能!立即獲取


使用 VBA 程式碼將工作簿中的多個工作表轉換為單獨的 PDF 文件

在某些情況下,您可能希望將工作簿中的每個工作表轉換為單獨的 PDF 文件。如果您的工作簿包含許多工作表,以下 VBA 程式碼可以幫助您同時將每個工作表保存為單獨的 PDF 文件。

1. 打開要轉換的工作簿,然後按住 ALT + F11 鍵打開 Microsoft Visual Basic for Applications 視窗。

2. 點擊 「插入」>「模組」,並將以下程式碼粘貼到模組視窗中。

VBA 程式碼:將工作簿中的多個工作表轉換為單獨的 PDF 文件

Sub SplitEachWorksheet()
'Updateby Extendoffice
Dim xSPath As String
Dim xSFD As FileDialog
Dim xWSs As Sheets
Dim xWb As Workbook
Dim xWbs As Workbooks
Dim xNWb As Workbook
Dim xInt, xI As Integer
Set xSFD = Application.FileDialog(msoFileDialogFolderPicker)
With xSFD
.title = "Please select a folder to save the converted files:"
.InitialFileName = "C:\"
End With
If xSFD.Show <> -1 Then Exit Sub
xSPath = xSFD.SelectedItems.Item(1)
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xWb = Application.ActiveWorkbook
Set xWbs = Application.Workbooks
Set xWSs = xWb.Sheets
Set xNWb = xWbs.Add
xInt = xWSs.Count
For xI = 1 To xInt
On Error GoTo EBreak
Set xWs = xWSs.Item(xI)
If xWs.Visible Then
xWSs(xWs.Name).Copy
Application.ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=xSPath & "\" & xWs.Name & ".pdf"
Application.ActiveWorkbook.Close False
End If
EBreak:
Next
xWb.Activate
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub

3. 按下 F5 鍵運行程式碼,此時會彈出一個窗口;請選擇保存轉換後的 PDF 文件的文件夾路徑。參見截圖:

A screenshot of the folder selection window for saving converted PDFs

4. 點擊「確定」按鈕,當前工作簿中的所有工作表都將被轉換為單獨的 PDF 文件:

A screenshot showing separate PDF files created for each worksheet in a workbook


使用便捷的功能將工作簿中的多個工作表轉換為單獨的 PDF 文件

Kutools for Excel 還支持一個有用的功能——分割工作簿,使用此功能,您可以根據需要將工作簿中的多個工作表保存為單獨的 Excel 文件、Txt 文件、CSV 文件和 PDF 文件。

Kutools for Excel 提供超過 300 種進階功能,簡化複雜任務,提升創造力與效率。 結合 AI 能力,Kutools 能夠精準自動化任務,讓數據管理變得輕而易舉。Kutools for Excel 的詳細資訊...免費試用...

1. 打開要將每個工作表保存為單獨 PDF 文件的工作簿,然後點擊「Kutool Plus」>「工作簿」>「分割工作簿」,參見截圖:

A screenshot of the Split Workbook tool in the Kutools Plus tab in Excel

2. 在「分割工作簿」對話框中,勾選要保存的工作表,然後從「指定保存格式」下拉列表中選擇 PDF (*.pdf) ,然後點擊「分割」按鈕,在「選擇文件夾」窗口中,指定一個文件夾來存放轉換後的文件,參見截圖:

A screenshot of the Split Workbook dialog box Arrow A screenshot of the Select Folder dialog for saving the individual PDF files for each worksheet

3. 然後,當前工作簿中所有選定的工作表都已分別保存為 PDF 文件,參見截圖:

A screenshot showing separate PDF files created for each worksheet in a workbook

Kutools for Excel - 超過 300 種必備工具,讓 Excel 功能更強大。永久免費享受 AI 功能!立即獲取


更多相關文章:

  • 將所有工作表僅保存為值
  • 如果您有一個包含多個公式的活頁簿,現在需要將該文件分發給其他用戶,您不希望顯示公式,而只顯示值。通常,我們可以通過複製並粘貼數據作為值來快速保存工作表。但是,如何在不逐一手動複製和粘貼的情況下將所有工作表僅保存為值呢?
  • 命令按鈕保存活動工作表為 PDF 文件
  • 在 Microsoft Excel 中工作時,您可能會遇到保存活動工作表為 PDF 文件的問題。本文中,您可以學習如何使用 VBA 程式碼通過命令按鈕將活動工作表保存為 PDF 文件。如果您還想將範圍或活動工作簿中的每個工作表保存為單獨的 PDF 文件,本文也可以幫助您。
  • 將大型表格拆分為多個小型表格
  • 如果您有一個包含多列和數百或數千行數據的大工作表,現在您希望根據列值或行數將這個大表格拆分為多個小表格以獲得以下結果。如何在 Excel 中處理這項任務呢?
  • 將工作簿拆分為單獨的 Excel 文件
  • 您可能需要將一個大型工作簿拆分為單獨的 Excel 文件,將工作簿中的每個工作表保存為單獨的 Excel 文件。例如,您可以將一個工作簿拆分為多個單獨的 Excel 文件,然後將每個文件交付給不同的人進行處理。這樣做,您可以讓特定的人處理特定的數據,並確保您的數據安全。本文將介紹如何根據每個工作表將大型工作簿拆分為單獨的 Excel 文件的方法。

最佳辦公效率工具

🤖 Kutools AI 助手:基於智能執行方式革新數據分析:智能執行   |  生成代碼  |  創建自訂公式  |  分析數據並生成圖表  |  調用 Kutools 函數
熱門功能查找、標記重複值或識別重複項   |  刪除空行   |  合併列或單元格而不丟失數據   |   四捨五入無需公式 ...
高級 LOOKUP多條件 VLookup    多值 VLookup  |   多表查找   |   模糊查找 ....
高級下拉列表快速創建下拉列表   |  依賴下拉列表   |  多選下拉列表 ....
列管理器添加特定數量的列  |  移動列  |  切換隱藏列的可見狀態  |  比較區域和列 ...
特色功能網格聚焦   |  設計檢視   |   增強編輯欄    工作簿與工作表管理器   |  資源庫(自動文本)   |  日期提取器   |  合併資料   |  加密/解密儲存格    按列表發送電子郵件   |  超級篩選   |   特殊篩選(篩選粗體/斜體/刪除線...) ...
頂級 15 種工具集12 個文本工具添加文本刪除特定字符、...)   |   50+ 圖表 類型甘特圖、...)   |   40+ 實用 公式基於生日計算年齡、...)   |   19 個插入工具插入QR碼根據路徑插入圖片、...)   |   12 個轉換工具金額轉大寫匯率轉換、...)   |   7 個合併與分割工具高級合併行分割儲存格、...)   |   ... 還有更多

使用 Kutools for Excel 提升您的 Excel 技巧,體驗前所未有的高效。 Kutools for Excel 提供超過 300 種高級功能來提高生產力並節省時間。  點擊這裡獲取您最需要的功能...


Office Tab 將標籤式界面帶到 Office,讓您的工作更加輕鬆

  • 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中啟用標籤式編輯和閱讀。
  • 在同一窗口的新標籤中打開和創建多個文檔,而不是在新窗口中。
  • 將您的生產力提高 50%,每天為您減少數百次鼠標點擊!