Mic*_*mer 7 excel vba excel-vba
是否可以更改SmartArtNode的宽度或高度?
以下代码根本不起作用:
' mySmartArt is a SmartArt Object
mySmartArt.AllNodes.Item(1).Shapes.Width = 4
Run Code Online (Sandbox Code Playgroud)
奇怪的是,如果你改变一个形状的宽度,它是有效的.所以我不知道为什么SmartArtNodes的Shape Objects根本无法调整大小.我知道的唯一方法是使用更大或更小的方法,但使用此方法不可能只更改形状的宽度/高度.
如果我使用上面的代码,我将永远得到一个运行时错误"对象不支持此操作(错误445)",这很奇怪,因为通过Excel的GUI我可以更改单个节点的宽度和高度SmartArt没有问题.因此,为什么不应该通过VBA来改变它是没有任何意义的.
有人知道如何解决这个问题吗?
小智 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
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
677 次 |
| 最近记录: |