要用vba操作ppt幻灯片图形中的文本,需要先使用Shape对象的HasTextFrame属性判断图形是否含有文本框架,然后再用HasText属性判断文本框架中是否含有文本,最后用TextRange对象的Text属性返回图形中的文本。
以下是一个批量操作ppt幻灯片中所有图形的文本的通用代码:
Sub QQ1722187970()
Dim oPPT As Presentation
Dim oSlide As Slide
Dim oCL As CustomLayout
Dim oP As Shape
'当前ppt演示文稿
Set oPPT = PowerPoint.ActivePresentation
With oPPT
'遍历每一个幻灯片
For Each oSlide In .Slides
With oSlide
'遍历每一个图形
For Each oP In .Shapes
With oP
If .HasTextFrame Then
If .TextFrame.HasText Then
sText = .TextFrame.TextRange.Text
'************************'
'接下来是操作代码
'************************'
End If
End If
End With
Next
End With
Next
End With
End Sub


发表评论