写个VBA函数,颠倒左右、上下位置顺序。
---->注意要选中以后,才能颠倒位置,以左边距为准,不是中心点。
--------------------------------------------
Sub 颠倒左右顺序()
VGCore.ActiveDocument.BeginCommandGroup "颠倒左右顺序"
Dim userSelect As VGCore.ShapeRange
Set userSelect = VGCore.ActiveSelectionRange
Dim dLeft() As Double
ReDim dLeft(userSelect.Count)
Dim J As Long
For I = 1 To userSelect.Count
dLeft(I) = userSelect.Shapes(I).LeftX
Next
J = 1
For I = userSelect.Count To 1 Step -1
userSelect.Shapes(I).LeftX = dLeft(J)
J = J + 1
Next
VGCore.ActiveDocument.EndCommandGroup
End Sub
-----------------------------------------------
**** 本内容需购买 ****
本帖最后由 xiyanghxc 于 2025-5-9 12:38 编辑
有空再出一个:按选中对象顺序(从左到右、从上到下)对应图层顺序的脚本,最终是图层里从上到下的顺序对应画板里对象的顺序
xiyanghxc 发表于 2025-5-9 12:31
有空再出一个:按选中对象顺序(从左到右、从上到下)对应图层顺序的脚本,最终是图层里从上到下的顺序对应 ...
先选中的排下面? Sub 颠倒选择顺序()
VGCore.ActiveDocument.BeginCommandGroup "颠倒选择顺序"
Dim userSelect As VGCore.ShapeRange
Set userSelect = VGCore.ActiveSelectionRange
For I = 1 To userSelect.Count - 1
userSelect.Shapes(I).OrderBackOf userSelect.Shapes(userSelect.Count)
Next
VGCore.ActiveDocument.EndCommandGroup
End Sub
这个不知道是不是你要的效果,按选择顺序调整层次。 夜的影子 发表于 2025-5-9 14:18
Sub 颠倒选择顺序()
VGCore.ActiveDocument.BeginCommandGroup "颠倒选择顺序"
Dim userSelect As...
在2024版本里运行没反应 xiyanghxc 发表于 2025-5-9 15:01
在2024版本里运行没反应
我的是2021, 需要选中形状以后再运行,这个是针对选中的形状的。 夜的影子 发表于 2025-5-9 14:18
Sub 颠倒选择顺序()
VGCore.ActiveDocument.BeginCommandGroup "颠倒选择顺序"
Dim userSelect As...
选中对象运行,没有任何反应的? xiyanghxc 发表于 2025-5-9 12:31
有空再出一个:按选中对象顺序(从左到右、从上到下)对应图层顺序的脚本,最终是图层里从上到下的顺序对应 ...
很期待这个在图层中重排位置的功能。 有啥用处呢?设计有用? 文字逆序,直接Ctrl+L就可以
页:
[1]
2