是否可以更改SmartArtNode的宽度或高度?
以下代码根本不起作用:
' mySmartArt is a SmartArt Object
mySmartArt.AllNodes.Item(1).Shapes.Width = 4
如果你改变一个形状的宽度,它就足够了。所以我不知道为什么SmartArtNodes的Shape Objects根本无法调整大小。我知道的唯一方法是使用更大或更小的方法,但使用这种方法不可能只改变形状的宽度/高度。
如果我使用上面的代码,我总会得到一个运行时错误"对象不支持此操作(错误445)",这很奇怪,因为通过GUI Excel我可以毫无问题地更改SmartArt的单个节点的宽度和高度。因此,为什么不能通过VBA更改它是没有任何意义的。
有人知道如何解决这个问题吗?
答案 0 :(得分:1)
喜欢这个吗?
Sub Macro1()
Dim Sma As Shape
Set Sma = ActiveSheet.Shapes.AddSmartArt(Application.SmartArtLayouts(2))
With Sma
.ScaleHeight 1.5, msoFalse, msoScaleFromBottomRight
.ScaleWidth 1.5, msoFalse, msoScaleFromTopLeft
End With
End Sub