遍历所有幻灯片和每张幻灯片的形状对象。

Dim oPres As Presentation

Set oPres=A

Dim oSlide As Slide

Dim oShape As Shape

For each oslide in opres.slides.next

For each o shape in oslide.shapes.next

当然,如果只想设置其中一张幻灯片或其中的第j个对象,可以删除上面代码的两个循环,指定幻灯片索引号和第j个对象。

I=oPres。Slides.Count

J=0

指定最后一张幻灯片或指定幻灯片上第一个对象的字体和段落格式

Set oSlide=oPres。Slides.Item(i)

Set oShape=oSlide。S(1)

如果只输入当前幻灯片并想设置所有对象的属性和段落格式,则PPT VBA不提供ActiveSlide对象,但可以通过以下对象层次结构和属性获得当前幻灯片的索引号:

a

导入当前幻灯片并设置所有对象的属性和段落格式的代码:

Sub oneSlideAllShapes()

On Error Resume Next

声明对象和变量

Dim oPres As Presentation

Set oPres=A

Dim oSlide As Slide

Dim oShape As Shape

Dim tr As TextRange

Dim I As Long、j As Long

“Dim k As Integer”当前幻灯片索引号

K=A

For each o shape in opres.slides (k)。shapes

If oS=msoTrue Then

Set tr=oS

With

.NameAscii='宋体'

.NameFarEast='宋体'

.Size=20

Color。SchemeColor=ppBackground

. color.rgb=RGB (red :=0,green :=0,blue :=0)

.Bold=msoFalse

End With

设定=1.1 '行距

Set tr=Nothing

End If

“OS”文本框背景色填充幻灯片背景

操作系统。IndentLevel=1

next

删除对象

Set oShape=Nothing

Set tr=Nothing

Set oSlide=Nothing

Set oPres=Nothing

End Sub

– End –

相关推荐