VBA设置弧形Shape节点效果与手动操作不一致的技术求助
VBA弧形形状节点操作后尺寸异常问题
复现代码
Sub TEST_ARC_SETTINGS() Dim Arc_Shape As Shape Set Arc_Shape = ActiveDocument.Shapes.AddShape(msoShapeArc, 50, 50, 100, 100) With Arc_Shape .Adjustments.Item(1) = -45 .Adjustments.Item(2) = 0 End With 'FIRST SCREENSHOT Arc_Shape.Nodes.SetEditingType 5, msoEditingCorner Arc_Shape.Fill.ForeColor = VBA.RGB(200, 200, 200) Set Arc_Shape = Nothing 'SECOND SCREENSHOT End Sub
现象对比
- 代码运行至
'FIRST SCREENSHOT'注释处时:弧形形状的尺寸与初始创建的圆形边界一致 - 代码完整运行结束后:设置节点编辑类型为角点后,弧形的尺寸发生了变化
- 手动执行对应操作时:
- 手动选中第5个节点并设置为角点编辑类型
- 对象尺寸变为预期的较小尺寸
- 最终弧形被“锁定”且尺寸符合预期,这和VBA执行的结果完全不同
需求
尝试过多种VBA操作节点的方式,但都会导致弧形尺寸改变,无法达到手动操作的效果,希望找到能实现手动操作同款效果的VBA指令。
内容的提问来源于stack exchange,提问作者Pieter Kruger
相关产品推荐
相关产品推荐

