PowerPoint2007檔案,點開母版視圖,會看到很多版式頁面有“任何幻燈片都不使用”的提示,如何使用vba代碼,一鍵操作將這些都不使用的版式頁面洗掉掉?
uj5u.com熱心網友回復:
以下代碼可以滿足你的需求,試試Option Explicit
Sub DeleteUnusedMaster()
Dim oSlide As Slide
Dim Dic As Object, i As Long, j As Long
Dim oDicItem As Variant, DicItem As Variant
Dim oFlag As Boolean
Set Dic = CreateObject("Scripting.Dictionary")
'獲得幻燈片母版編號和版式名稱
For Each oSlide In ActivePresentation.Slides
Dic(oSlide.Design.Index) = Dic(oSlide.Design.Index) & "," & oSlide.Master.Name
Next oSlide
'洗掉任何幻燈片都不使用母版和版式
For i = ActivePresentation.Designs.Count To 1 Step -1
With ActivePresentation.Designs(i)
If Not Dic.exists(i) Then
.Delete
Else
DicItem = Split(Right(Dic(i), Len(Dic(i)) - 1), ",")
For j = .SlideMaster.CustomLayouts.Count To 1 Step -1
oFlag = False
For Each oDicItem In DicItem
If oDicItem = .SlideMaster.CustomLayouts(j).Name Then oFlag = True
Next oDicItem
If oFlag = False Then .SlideMaster.CustomLayouts(j).Delete
Next j
End If
End With
Next i
Set Dic = Nothing
End Sub
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/87009.html
上一篇:開機bios
