如何使用 VBA 創建幻燈片並將其添加到 PowerPoint 演示文稿中?

幾天前,一位讀者詢問有一種方法可以從頭開始自動創建 PowerPoint 演示文稿,然後快速將幻燈片添加到現有演示文稿中。我認為該腳本可能在最有用的 PowerPoint 宏列表中名列前茅。 

正如我們過去所指出的,PowerPoint 不包含宏記錄器(這與 Excel 和 Word 不同,它們都內置了宏記錄器)。因此,我們留下了很好的舊 Visual Basic for Application,我們可以使用它來創建簡單的宏來自動化 PowerPoint。PowerPoint 自動化還有其他替代方案,但這些超出了本教程的範圍。

在今天的簡短教程中,我們將介紹三個不同的用例:

  1. 新的演示文稿創建(空白或使用模板)
  2. 將幻燈片添加到現有演示文稿。
  3. 上述兩種情況的混合(從頭開始創建和添加幻燈片)

讓我們開始吧。

看看絲帶。如果您沒有在菜單中看到開發人員條目,則在開始編碼之前,您需要啟用開發人員選項卡。

使 Developer 菜單可見您的功能區後,繼續並點擊Developer,然後點擊Visual Basic按鈕(或直接點擊 Alt+F11)以打開 Visual Basic IDE。

VBA 創建 PowerPoint 演示文稿

  1. 在 VB 編輯器中,右鍵單擊 VBAProject 並點擊Insert。
  2. 選擇模塊。
  3. 將以下代碼粘貼到新創建的模塊中。
Sub CreatePresentation()
Dim NewPres as Presentation
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
End Sub
  1. 點擊文件,然後保存。
  2. 要運行您的代碼,請點擊運行,然後選擇運行子/用戶表單(或簡單的 F5)。
  3. 關閉 VB 編輯器。

VBA插入幻燈片

  1. 在 VB 編輯器中,右鍵單擊 VBAProject 並點擊插入。
  2. 選擇模塊
  3. 將以下代碼粘貼到新創建的模塊中。
Sub CreateSlide()
Dim NewSlide as Slide
'This statement ads a title slide
Set NewSlide = ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)
'This statement adds a blank slide in the second place
Set NewSlide = ActivePresentation.Slides.Add(Index:=2, Layout:=ppLayoutBlank)
End Sub
  1. 點擊文件,然後保存。
  2. 要運行您的代碼,請點擊運行,然後選擇運行子/用戶表單(或簡單的 F5)。
  3. 關閉 VB 編輯器。

用於設置新演示文稿並添加幻燈片的宏

那隻是將上面概述的兩個片段混合在一起。

Sub CreatePres_AddSlides()
Dim NewPres as Presentation
Dim NewSlide as Slide
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
' Title Slide
Set NewSlide = ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)
'This statement adds a blank slide in the second place
Set NewSlide = ActivePresentation.Slides.Add(Index:=2, Layout:=ppLayoutBlank)
'Save the new PowerPoint file
NewPres.SaveAs("MyPresentation.pptx")
End Sub

接下來,您可能會查看我們關於使用 VBA在 PowerPoint 中以編程方式創建形狀的教程

從 Excel 生成 PowerPoint 演示文稿

最後一種情況是您想直接從 Excel 電子表格創建 PowerPoint 演示文稿。您可以在 Word 和其他 Microsoft 365 應用程序中使用相同的技術。

  • 將電子表格鏈接到 PowerPoint 數據模型(從工具>>參考)
  • 在 Excel 電子表格中插入一個按鈕(開發人員 >> 插入,然後選擇一個命令按鈕)。
  • 將下面的 VBA 代碼插入到您的電子表格 VBA 項目中(直接插入到工作表或 VBA 模塊中)
  • 根據需要修改腳本。
  • 運行(按 F5)並測試結果。
Sub CreatePresentationFromExcel()


Dim MyPPt As PowerPoint.Application
Dim NewPres As PowerPoint.Presentation
Dim NewSlide As Slide
Set MyPPt = CreateObject("PowerPoint.Application")

Set NewPres = MyPPt.Presentations.Add
Set NewSlide = MyPPt.ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)

NewPres.SaveAs ("MyPresentation.pptx")
NewPres.Close

MyPPt.Quit

MsgBox ("Presentation saved")
End Sub

享受🙂

Excel VBA PowerPoint 的優點

  • 如果 ppt 檔案有許多投影片且內容龐大,則在 Powerpoint 中使用 VBA 可以輕鬆處理。
  • 即使可用功能有限,有 Powerpoint 的 VBA 也能提供一定程度的自動化。

Excel VBA PowerPoint 的缺點

  • 我們需要從「工具」功能表選項中的「參考」選項中選擇 Microsoft PowerPoint 15.0 物件庫 ,我們需要在開始時使用該選項example-1,每次我們執行 PowerPoint 程式碼時。

要記住的事情

  • 編寫程式碼後,將檔案儲存為巨集啟用演示格式。這將幫助我們避免丟失程式碼並在將來多次使用相同的程式碼。
  • 重新編碼功能在這裡不起作用,因為我們需要從 Excel 跳到 PowerPoint 更改頁面之間的介面。
  • 始終在運行之前編譯程式碼。這將幫助您找到程式碼中的錯誤。當我們編寫大行程式碼時,這非常有幫助。
  • 要執行和實作程式碼,我們需要開啟帶有圖表的 Excel 工作表,並將其貼到 PowerPoint 投影片中。
  • 我們可以根據需要在 PowerPoint 中對齊圖表。

留下評論

適用於小型團隊的簡易雙週工資追蹤 Excel 範本:新手友善設定

適用於小型團隊的簡易雙週工資追蹤 Excel 範本:新手友善設定

為小型團隊在 Excel 中建立一個簡單的雙週工資追蹤表,包含清晰的表格、公式、檢查和實用的限額,以確保工資核對的安全性。

如何將 Salesforce 聯絡人匯出為乾淨的 Excel 格式

如何將 Salesforce 聯絡人匯出為乾淨的 Excel 格式

了解如何將 Salesforce 聯絡人匯出到乾淨的 Excel 檔案中,保留 ID 和文字字段,安全地刪除重複項,並避免常見的 CSV 錯誤。

適用於小型承包商的可列印Excel版建築工程估價模板

適用於小型承包商的可列印Excel版建築工程估價模板

使用 Excel 建立可列印的建築工程估算表,其中包含實用的成本類別、公式、標記欄位、列印設定和承包商可直接使用的清單。

Airbnb 房東專用可列印每週清潔排程範本(Word 與 PDF)

Airbnb 房東專用可列印每週清潔排程範本(Word 與 PDF)

使用此可列印的每週清潔排程來管理 Airbnb 房源,協助安排退房清潔、例行清潔、補貨、檢查,以及 Word 轉 PDF 的交接流程。

HubSpot 免費 CRM 對決 Zoho CRM:2026 年獨立房地產經紀人的最佳選擇

HubSpot 免費 CRM 對決 Zoho CRM:2026 年獨立房地產經紀人的最佳選擇

比較 HubSpot 免費 CRM 與 Zoho CRM 在獨立房地產經紀人應用上的差異,涵蓋聯絡人、銷售管道、自動化、自訂功能、排程、限制及升級時機。

如何解決 Windows 上 PowerPoint 螢幕錄製音訊無法工作的問題

如何解決 Windows 上 PowerPoint 螢幕錄製音訊無法工作的問題

透過檢查音訊控制項、Windows 麥克風權限、作用中的輸入裝置、系統音訊預期以及 Office 更新,修復 PowerPoint 螢幕錄製無聲的問題。

免費出租物業費用與收入追蹤 Excel 範本:初學者友善設定指南

免費出租物業費用與收入追蹤 Excel 範本:初學者友善設定指南

使用 Excel 建立免費的出租物業收入與費用追蹤器,包含物業層級記錄、Schedule E 友善分類、現金流量追蹤、收據管理,以及 2026 年里程數更新。

Outlook 能收信卻無法寄信?如何找出並修復真正原因

Outlook 能收信卻無法寄信?如何找出並修復真正原因

修復 Outlook 收信正常但寄信失敗的問題。透過隔離網頁郵件、待發信匣、SMTP、帳戶限制及設定檔問題,無需盲目猜測。

如何將 PDF 轉換為可編輯的 Word 文件而不遺失格式

如何將 PDF 轉換為可編輯的 Word 文件而不遺失格式

將 PDF 轉換為可編輯的 Word 文件,同時盡可能保留原有格式。了解最佳方法、品質檢查、OCR 選項,以及何時應切換轉換方式。

如何防止 Excel 自動將數字轉換為日期

如何防止 Excel 自動將數字轉換為日期

防止 Excel 將 1-2、3/4、JAN1 和產品代碼等條目轉換為日期。了解何時使用文字格式、撇號、自動資料轉換設定,或受控的 CSV 匯入。