萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 辦公室軟體 >  >> PowerPoint 教學 >> PPT 進階技巧

一鍵清除 PPT 所有動畫:VBA 巨集碼 3 秒執行 + 原生「不帶動畫放映」替代方案

接手他人舊檔、模板套用後動畫雜亂、需輸出靜態版本……逐個刪除動畫太慢。VBA 巨集一鍵清空全檔動畫,或用原生「不帶動畫放映」臨時繞過。

方案一:VBA 巨集碼(徹底刪除動畫資料)

  1. Alt+F11 開啟 VBE 編輯器。
  2. 【插入】→【模組】,貼上以下碼:
Sub RemoveAllAnimations()
    Dim i As Long, j As Long
    Dim oPres As Presentation
    Set oPres = ActivePresentation
    With oPres
        For i = 1 To .Slides.Count
            If Val(Application.Version) < 12 Then ' PowerPoint 2007 以前
                For j = 1 To .Slides(i).Shapes.Count
                    .Slides(i).Shapes(j).AnimationSettings.Animate = msoFalse
                Next j
            Else ' PowerPoint 2007 及以後 (TimeLine 模型)
                For j = .Slides(i).TimeLine.MainSequence.Count To 1 Step -1
                    .Slides(i).TimeLine.MainSequence(j).Delete
                Next j
            End If
        Next i
    End With
    Set oPres = Nothing
    MsgBox "所有動畫已清除完成!"
End Sub
  1. 按 F5 或點【執行】→【執行子程式/使用者表單】,數秒完成全檔動畫清空。

碼邏輯解析: 2007 版前用 `AnimationSettings.Animate = msoFalse` 關閉舊版動畫模型;2007 版後用 `TimeLine.MainSequence(j).Delete` 逐個刪除時間軸動畫項目(逆向刪除避免索引錯位)。

方案二:原生「不帶動畫放映」(臨時繞過,不改檔案)

  1. 【投影片放映】→【設定放映方式】。
  2. 勾選【放映時不帶動畫】→ 確定。
  3. 放映時所有動畫自動跳過,投影片直接顯示最終狀態。

適用:臨時投影、列印講義、快速瀏覽內容。檔案本身動畫保留,下次開啟恢復原狀。

方案三:另存為「PowerPoint 圖片展示」(.ppsx) + 手動清理

若需保留部分鍵動畫:另存為 .ppsx → 開啟 → 僅保留關鍵頁動畫 → 刪除其餘。適合「精簡版」輸出。

避坑提醒

  • 執行 VBA 前**備份原檔**(另存 .bak),巨集操作不可撤銷。
  • 含「觸發器」動畫的複雜互動頁,VBA 刪除後邏輯斷裂,需人工修補。
  • 巨集安全性:【檔案】→【選項】→【信任中心】→【巨集設定】→ 選【啟用所有巨集】(僅執行期間),用畢改回【停用所有巨集並通知】。

一鍵清空是「核武級」操作,用前三思。常態化建議:建立「無動畫母版」與「動畫版」雙軌並行,源頭避免混雜。

copyright © 萬盛學電腦網 all rights reserved