我想用某种循环调用命名范围让我们假设我有一张表:
2个命名范围
2个形状
[namedrange1]设置为A1
[namedrange2]设置为A2
范围A1值为1
范围A2值为2
第一个形状命名为shape1
第二个形状命名为shape2
我想对形状做些什么,例如移动它们,我可以这样做:
Sub moveshapes()
ActiveSheet.Shapes("shape" & [namedrange1]).Top = Cells(3, 3).Top
ActiveSheet.Shapes("shape" & [namedrange2]).Top = Cells(3, 3).Top
End Sub
但我不想这样做。如果我喜欢100个形状怎么办?我需要在命名范围NAME中使用某种带变量的循环。我尝试了下面的代码,但它不起作用..
Sub moveshapes()
Dim i As Integer
For i = 1 To 2
ActiveSheet.Shapes("shape" & [namedrange & i]).Top = Cells(3, 3).Top
Next i
End Sub