使用Slides集合对象的Range方法获取指定演示文稿中的幻灯片子集,这样可以只针对演示文稿中的部分幻灯片进行操作。该方法的语法格式为:
code.vba
Set sr=pr.Slides.Range(Index)
其中,Index指定幻灯片的索引号、名称或包含索引号或名称的数组。省略时返回所有对象。
下面获取第2个幻灯片:
code.vba
Set sr=pr.Slides.Range(2)
下面用索引号获取第1个和第3个幻灯片:
code.vba
Set sr=pr.Slides.Range([1,3])
下面用幻灯片的名称获取第1个和第3个幻灯片:
code.vba
Set sr=pr.Slides.Range(['Slide1','Slide3'])
编写下面的代码。
code.vba
Sub Test()
Dim pr As Presentation
Set pr = Presentations(1)
Dim lo As CustomLayout
Set lo = pr.SlideMaster.CustomLayouts(7)
pr.Slides.AddSlide 2, lo
pr.Slides.AddSlide 3, lo
pr.Slides.AddSlide 4, lo
pr.Slides.AddSlide 5, lo
Dim sr As SlideRange
Set sr = pr.Slides.Range(Array(2, 3))
sr.CustomLayout = pr.SlideMaster.CustomLayouts(2)
End Sub
效果如图4-1所示。