Note: The other languages of the website are Google-translated. Back to English

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

有時,您需要將Excel文件轉換為PDF文件,以便其他人無法修改它們。 在Excel中,我們可以使用“另存為”功能將Excel文件另存為PDF文件。 但是,如何在Excel中同時將多個工作簿轉換為PDF文件呢?


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

通常,Excel中的“另存為”功能可以幫助您將整個工作簿保存為PDF文件,方法如下:

1。 啟動您要轉換為PDF格式的工作簿。

2。 點擊 文件 > 另存為,並在中 另存為 對話框中,請指定用於保存新文件的文件夾,然後選擇 PDF 來自 保存類型 下拉列表,然後單擊 選項 按鈕,請參見屏幕截圖:

3。 然後,在彈出 選項 對話框,檢查 整個工作簿,請參見屏幕截圖:

4。 然後點擊 OK > 節省,整個工作簿已保存為PDF文件格式。

保養竅門:如果您需要轉換多個工作簿,請按照上述步驟將工作簿一個一個地保存到PDF文件。

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

如果需要轉換數百個Excel文件,則上述方法將很麻煩,在這裡,我將討論將多個工作簿一次轉換為PDF文件的VBA代碼,請執行以下步驟:

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 鍵以運行此代碼,然後將顯示一個窗口,請選擇一個包含要轉換的工作簿的文件夾,請參見屏幕截圖:

4。 然後,點擊 OK,會彈出另一個窗口,請選擇要輸出新PDF文件的文件夾路徑,請參見屏幕截圖:

5。 然後,點擊 OK,完成轉換後,您可以轉到指定的文件夾預覽轉換結果,請參見屏幕截圖:


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

如果你有 Excel的Kutools,其 格式轉換器 實用程序,您可以一次將多個工作簿快速轉換為PDF文件。

保養竅門:要應用此 格式轉換器 功能,首先,您應該下載 Excel的Kutools,然後快速輕鬆地應用該功能。

安裝後 Excel的Kutools,請這樣做:

1。 點擊 Kutools 加 > 工作簿 > 格式轉換器,請參見屏幕截圖:

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

3。 點擊 OK,然後,在 FileFormat轉換器 對話框中,指定以下選項:

  • 轉換類型 下拉列表,選擇 Excel工作簿轉換為PDF;
  • 然後點擊 加入 按鈕以添加要轉換的Excel文件,可以根據需要從計算機磁盤或OneDrive中添加工作簿; 

4。 插入要轉換的工作簿後,仍在 文件格式轉換器 對話框,請單擊 按鈕選擇一個文件夾路徑以輸出轉換後的文件,然後在對話框底部指定所需的一些操作,請參見屏幕截圖:

筆記:在以上對話框中:
  • 如果子文件夾中的工作簿也需要轉換,請檢查 添加文件夾時包括子文件夾 複選框
  • 如果要在轉換後刪除原始文件,請檢查 轉換後刪除源文件 框;
  • 如果要保留原始文件的修改日期,請檢查 保留原始文件的修改日期 框;
  • 可以通過檢查以下內容來保留文件的目錄結構: 轉換後保留文件的目錄結構 框;

5。 然後點擊 OK 要開始轉換,當所有指定的Excel文件都轉換為PDF文件時,您可以轉到指定的文件夾以預覽轉換的結果,請參見屏幕截圖:


使用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文件,請參見屏幕截圖:

4。 然後,點擊 OK 按鈕,當前工作簿中的所有工作表已分別轉換為PDF文件,請參見屏幕截圖:


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

Excel的Kutools 還支持一個有用的功能- 拆分工作簿,使用此功能,您可以在工作簿中保存多個工作表,以根據需要將Excel文件,Txt文件,CSV文件和PDF文件分開。

保養竅門:要應用此 拆分工作簿 功能,首先,您應該下載 Excel的Kutools,然後快速輕鬆地應用該功能。

安裝後 Excel的Kutools,請這樣做:

1。 打開您想要將每個工作表另存為PDF文件的工作簿,然後單擊“確定”。 酷圖加 > 工作簿 > 拆分工作簿,請參見屏幕截圖:

2。 在 拆分工作簿 對話框中,選中要保存的工作表,然後選擇 PDF(* .pdf) 來自 保存類型 下拉列表,然後單擊 分裂 按鈕,在 選擇“文件夾” 窗口中,指定用於放置轉換後文件的文件夾,請參見屏幕截圖:

3。 然後,當前工作簿中所有選定的工作表已單獨保存為PDF文件,請參見屏幕截圖:


更多相關文章:

  • 在Excel中將多個Xls文件轉換為Xlsx文件
  • 要將舊的xls Excel文件轉換為新的xlsx文件,可以在Excel中應用“另存為”功能,但是,如果需要轉換多個xls文件,如何快速,輕鬆地處理此任務?
  • 將所有工作表另存為值
  • 如果您有一個包含多個公式的工作簿,現在,您需要將此文件分發給其他用戶,您不想顯示公式,而只顯示值。 通常,通過僅將數據複製和粘貼為值,我們可以快速將工作表另存為值。 但是,如何僅將所有工作表另存為值而又不一一複制和粘貼呢?
  • 將活動工作表另存為PDF文件的命令按鈕
  • 在Microsoft Excel中工作時,您可能會遇到將活動工作表另存為PDF文件的問題。 在本文中,您可以學習如何通過命令按鈕使用VBA代碼將活動工作表另存為PDF文件。 並且,如果您還希望將活動工作簿中的範圍或每個工作表另存為單獨的PDF文件,則本文也可以為您提供幫助。
  • 將一個大表拆分為多個小表
  • 現在,如果您有一個包含多列和成百上千行數據的大型工作表,則希望根據列值或行數將該大型表拆分為多個小型表,以獲得以下結果。 您如何在Excel中處理此任務?
  • 拆分工作簿以分隔Excel文件
  • 您可能需要將一個大型工作簿拆分為單獨的Excel文件,然後將工作簿的每個工作表另存為單獨的Excel文件。 例如,您可以將工作簿拆分為多個單獨的Excel文件,然後將每個文件交付給不同的人來處理。 這樣,您可以讓某些人處理特定數據,並確保您的數據安全。 本文將介紹根據每個工作表將大型工作簿拆分為單獨的Excel文件的方法。

最佳辦公效率工具

Kutools for Excel 解決了你的大部分問題,並將你的生產力提高了 80%

  • 重用: 快速插入 複雜的公式,圖表 以及您以前使用過的任何東西; 加密單元 帶密碼 創建郵件列表 並發送電子郵件...
  • 超級公式欄 (輕鬆編輯多行文本和公式); 閱讀版式 (輕鬆讀取和編輯大量單元格); 粘貼到過濾範圍...
  • 合併單元格/行/列 不會丟失數據; 拆分單元格內容; 合併重複的行/列...防止細胞重複; 比較範圍...
  • 選擇重複或唯一 行; 選擇空白行 (所有單元格都是空的); 超級查找和模糊查找 在許多工作簿中; 隨機選擇...
  • 確切的副本 多個單元格,無需更改公式參考; 自動創建參考 到多張紙; 插入項目符號,複選框等...
  • 提取文字,添加文本,按位置刪除, 刪除空間; 創建和打印分頁小計; 在單元格內容和註釋之間轉換...
  • 超級濾鏡 (將過濾方案保存並應用於其他工作表); 高級排序 按月/週/日,頻率及更多; 特殊過濾器 用粗體,斜體...
  • 結合工作簿和工作表; 根據關鍵列合併表; 將數據分割成多個工作表; 批量轉換xls,xlsx和PDF...
  • 超過 300 項強大的功能. 支持 Office / Excel 2007-2021 和 365。支持所有語言。 在您的企業或組織中輕鬆部署。 完整功能 30 天免費試用。 60 天退款保證。
kte選項卡201905

Office選項卡為Office帶來了選項卡式界面,使您的工作更加輕鬆

  • 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
  • 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
  • 將您的工作效率提高 50%,每天為您減少數百次鼠標點擊!
officetab底部
按評論排序
留言 (5)
還沒有評分。 成為第一位評論!
網站主持人對此評論進行了最小化
我正在 pdf 資源管理器中編輯和更新我的數據,我的數據已經在 excel 表中,所以現在我想將我的 excel 日誌導出到 pdf 資源管理器
網站主持人對此評論進行了最小化
這非常適合我正在尋找的東西。 謝謝分享。 我以前用 Acethinker PDF Creator 將 excel 文件轉換為 PDF 文件,一個一個,不是那麼快,在這里分享它作為替代解決方案。
網站主持人對此評論進行了最小化
vba 真的很好,很好地滿足了我的目的。 但是是否可以不更改此代碼以從特定工作表為多個 excel 文件創建 pdf(例如我擁有的所有 3 個 excel 工作簿的第三個工作表)。
網站主持人對此評論進行了最小化
非常感謝您提供此代碼。
網站主持人對此評論進行了最小化
您好,這可能太多了,但是有沒有一種方法可以製作一個 VBA,將多個工作簿工作表分離到它們自己的 pdf 文件中,並且每個標題都是工作表中某個單元格中的文本?
這裡還沒有評論
留下你的意見
以訪客身份發帖
×
評價此帖子:
0   字符
推薦地點

關注我們

版權所有©2009 - 萬維網。extendoffice.com。 | 版權所有。 供電 ExtendOffice。 |
Microsoft和Office徽標是Microsoft Corporation在美國和/或其他國家的商標或註冊商標。
受Sectigo SSL保護