我正在VBA中编写脚本,以将幻灯片的标题更改为部分标题。我有多个部分,但我想遍历ppt以将幻灯片的所有标题更改为与该部分具有相同的部分标题。
我试图找到如何获取章节标题并将其设置为幻灯片标题的方法。
Sub test()
ActivePresentation.Slides.Name = ActivePresentation.SectionProperties(sectionName)
End Sub
我需要添加迭代,我需要语法混乱。
答案 0 :(得分:0)
希望您正在寻找以下类似的东西。代码
ActivePresentation
中的每张幻灯片,并添加标题(如果还没有标题的话)。sectionIndex
属性来更改标题文本,然后在SectionProperties.Name
方法中使用该索引来检索相应的文本。Sub ChangeMyTitles()
Dim sld As Slide
Dim titleShape As Shape
If ActivePresentation.SectionProperties.Count = 0 Then Exit Sub
For Each sld In ActivePresentation.Slides
With sld
If Not .Shapes.HasTitle Then
Set titleShape = .Shapes.AddTitle
Else
Set titleShape = .Shapes.Title
End If
titleShape.TextFrame2.TextRange.Text = ActivePresentation.SectionProperties.Name(.sectionIndex)
End With
Next sld
End Sub
编辑:
如果您要修改与标题不同的占位符,则可以执行以下操作。根据您的屏幕截图,我假设您要修改的占位符是第三个(标题是第1个,正文是第2个,章节是第3个),但是您可能必须更改下面的3
。
Sub ChangeMyChapters()
Dim sld As Slide
Dim chapterShape As Shape
If ActivePresentation.SectionProperties.Count = 0 Then Exit Sub
For Each sld In ActivePresentation.Slides
With sld
Set chapterShape = .Shapes.Placeholders(3)
chapterShape.TextFrame2.TextRange.Text = ActivePresentation.SectionProperties.Name(.sectionIndex)
End With
Next sld
End Sub