2016-04-08 56 views
0

在代码中的某些形状在这里看到:只选择在动态范围

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来自进口。代码做了我想要做的事情,它根据刚才出现的形状的位置重新定位每个新形状。大多数人可以看到的问题是,它也会重新定位页面上的每个图形,并且每个新的导入或复制都会重新定位。我需要一种方法来让宏重新定位新导入的形状。有没有办法让代码取消所有形状,除了新的形状以及刚才引入的形状?

回答