在这里看到的代码:
Dim i As Long
Dim s, s2 As Shape
Dim sr As ShapeRange
Dim DupCounter As Integer
DupCounter = 1
Do Until DupCounter > QUANTITY
sHape1.Duplicate
ActivePage.Shapes.All.CreateSelection
Set sr = ActiveSelectionRange
For i = 1 To sr.COUNT
Set s = sr(i)
If i = 1 Then
s.SetPosition 0, 0
ElseIf i <> 1 Then
s.SetPosition s2.PositionX, (s2.PositionY + (s2.SizeHeight / 2) + 0.35 + (s.SizeHeight / 2))
End If
Set s2 = s
Next i
DupCounter = DupCounter + 1
Loop
Shape1来自导入。代码完成了我想要它做的事情,它根据前面出现的形状的位置定位每个新形状。大多数人都可以看到的问题是,它还会重新定位页面上的每个形状,每个新导入或重复。我需要一种方法让宏重新定位新导入的形状。有没有办法让代码取消选择所有形状,除了新的形状和之前带来的on?
答案 0 :(得分:1)
我找到了GDG的一个教程,该教程展示了通过搜索静态ID来查找形状的方法。你可以在这里观看 - &gt; http://community.coreldraw.com/talk/coreldraw_graphics_suite_x6/f/704/t/35486
约翰很棒。