我有大约20个矩形布局的复选框。我如何通过For Each循环知道我的代码通过它们循环的顺序是什么?
我已经确认它不是CheckBox1,CheckBox2,CheckBox3等的顺序。
答案 0 :(得分:4)
对于工作表中列出的ActiveX复选框控件,<右键单击> ,Order命令设置在For ... Each循环中检索它们的顺序。需要注意的是,这些命令似乎是倒退的。
此版本的VBA位于Shape.ZOrder method。
With Worksheets("Sheet1")
.Shapes("CheckBox2").ZOrder msoBringForward '<~~ send back one place in the queue
.Shapes("CheckBox2").ZOrder msoSendToBack '<~~ place at the beginning of the queue
End With
使用Shape.ZOrderPosition property确定当前位置。