使用Word VBA,是否可以使用图表名称访问/获取对图表对象的引用?
在Word界面中,您可以打开"选择窗格",并指定图表的名称。我想使用该name属性访问VBA中的图表。
如果我不能使用该名称,我必须通过将图表定位为范围的InlineShape集合的一部分,通过更加繁琐的路线获得参考。
Set MyChart= wrdApp.Selection.InlineShapes(1).Chart
但这非常繁琐,所以能够根据名称直接导航到图表会很棒......
答案 0 :(得分:0)
InlineShape对象没有name属性。如果您将它们转换为形状对象,但您仍需要使用InlineShapes(index)
进行转换:
Sub ShapeTest()
Dim oShp As Shape
If ThisDocument.InlineShapes.Count > 0 Then
Set oShp = ThisDocument.InlineShapes(1).ConvertToShape
MsgBox "Shape name = " & ThisDocument.Shapes(oShp.Name).Name
End If
Set oShp = Nothing
End Sub
(样本没有意义,但你明白了)
修改强>:
刚刚检查了online documentation for InlineShape,似乎InlineShape
对象在Word 2013及更高版本中作为Name
属性。你正在运行哪个版本?我只能访问Word 2010,其中我的上述内容是真的。