VBA为多主题演示文稿加水印时如何访问全部母版幻灯片
解决方案
你调用的ActivePresentation.SlideMaster仅对应演示文稿的第一个主题母版,多主题母版全部存放在ActivePresentation.Designs集合中,遍历该集合即可访问所有主题对应的母版,逐个修改水印即可。
修改后代码示例
xlName = Range("A" & CStr(count)) xlCompany = Range("B" & CStr(count)) xlDate = Range("C" & CStr(count)) xlMail = Range("D" & CStr(count)) ' 遍历所有主题对应的母版,逐个修改水印 Dim oDesign As Design For Each oDesign In ActivePresentation.Designs oDesign.SlideMaster.Shapes(1).TextFrame.TextRange.Text = "Confidential - Do Not Share" & vbNewLine & "Issued to " _ & xlName & vbNewLine & "on " & xlDate & vbNewLine & xlCompany & " - Internal Use Only" Next oDesign
补充说明
如果存在部分母版未预先插入对应水印文本框的情况,可在循环内增加判断逻辑,检测不到目标文本框时先新建置于底层的文本框再修改内容,避免运行时报错。
内容的提问来源于stack exchange,提问作者Mikiran
相关产品推荐
相关产品推荐

