我一直在研究一個 VBA 宏,它可以在主幻燈片上為多個命名的人自動創建水印,然后自動將其保存到單獨的 PDF 中。所有這些現在都運行良好。但是,我可能需要為某些演示文稿添加水印,將多個主題應用于不同的幻燈片。(例如,前半部分使用主題 1,后半部分使用主題 2)每個主題都有一個單獨的母版幻燈片。當我使用 ActivePresentation.SlideMaster 時,這只影響幻燈片母版視圖中的頂部母版幻燈片。我將如何訪問其他主題的母版幻燈片?
編輯:這是我的代碼。xlVariables 來自 Excel 檔案。水印線是指最靠后的文本框。我搜索了一種訪問多張母版幻燈片的方法,但找不到任何內容。
xlName = Range("A" & CStr(count))
xlCompany = Range("B" & CStr(count))
xlDate = Range("C" & CStr(count))
xlMail = Range("D" & CStr(count))
'Create the watermark
ActivePresentation.SlideMaster.Shapes(1).TextFrame.TextRange.text = "Confidential - Do Not Share" & vbNewLine & "Issued to " _
& xlName & vbNewLine & "on " & xlDate & vbNewLine & xlCompany & " - Internal Use Only"
uj5u.com熱心網友回復:
下面是一些示例代碼,它們將對演示文稿中的每個母版(代碼中的 oDes.SlideMaster)和布局 (oLay) 執行(您定義的)操作。
修改 DoSomethingWithShapeContainer 以執行您需要對每個主/布局執行的任何操作。
Sub AllMastersAndLayouts()
Dim oLay As CustomLayout
Dim oDes As Design
With ActivePresentation
For Each oDes In .Designs
Call DoSomethingWithShapeContainer(oDes.SlideMaster)
For Each oLay In oDes.SlideMaster.CustomLayouts
Call DoSomethingWithShapeContainer(oLay)
Next
Next
End With
End Sub
Sub DoSomethingWithShapeContainer(oShapeContainer As Object)
With oShapeContainer.Shapes.AddTextbox(msoTextOrientationHorizontal, 20, 20, 200, 50)
.TextFrame.TextRange.Text = "I did something here"
End With
End Sub
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/339968.html
