如何解决我想使用vba在PowerPoint中以所有形状设置名称
我希望这是一个非常简单的问题,但由于某种原因我无法弄清楚。 我在PowerPoint幻灯片中有很多形状,例如矩形1,矩形2,矩形3, 矩形4,矩形5,矩形6等&五边形1,五角形2,五角形3, 五角大楼4,五角大楼5,五角大楼6 ......具有唯一的名称和许多图标(图形)。 我想更改形状中的所有名称并更改图标。
我尝试过
Sub shapeText()
Application.Presentations(1).Slides(1).Shapes(Rectangle 1).TextFrame.TextRange.Text = "DOG"
Application.Presentations(1).Slides(1).Shapes(Rectangle 2).TextFrame.TextRange.Text = "CAT"
Application.Presentations(1).Slides(1).Shapes(Pentagon 1).TextFrame.TextRange.Text = "WATER"
Application.Presentations(1).Slides(1).Shapes(Pentagon 2).TextFrame.TextRange.Text = "FIRE"
End Sub
这是一个漫长的过程(必须完成90行)。我认为使用数组可以轻松完成。 如果所有数据(“ DOG”,“ CAT”,“ WATER”,“ FIRE”,........)都从excel中提取,将提供巨大的帮助 工作表和更改将在PowerPoint幻灯片中。
解决方法
这里是命名所有形状的快速方法。
如果要为实例list = array("dog","square" ... etc)
使用数组中的名称,则只需使用shape.TextFrame.TextRange.Text = list(counter)
Sub nameAllShapes()
Dim slide As slide
Dim shape As shape
Dim counter As Integer
counter = 1
For Each slide In ActivePresentation.Slides
For Each shape In slide.Shapes
shape.Name = "shapetype:" & shape.Type & "_no:" & counter
shape.TextFrame.TextRange.Text = shape.Name
counter = counter + 1
Next shape
Next slide
End Sub
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。