使用考虑包含多种形状的工作表时,和一个片段(1):其中的形状被选择VBA Excel中:Selection集合环状的索引引用不正确范围与形状
'(1)
For i = 1 To Selection.Count
MsgBox Selection(i).Name
Next
不管(必须更当然比1)前两个形状似乎总是返回。
考虑使用ShapeRange(2)的:
'(2)
For i = 1 To Selection.Count
MsgBox Selection.ShapeRange(i).Name
Next
此(2)实际上返回所选择的形状的名称,如同(3):
'(3)
For i = 1 To Selection.ShapeRange.Count
MsgBox Selection.ShapeRange(i).Name
Next
虽然(1)产生一个错误如果选择少于1个Shape,则(3)看起来工作正常 - 除非Chart是唯一的选择,并且返回自动化错误:“调用的对象与客户端断开连接。”
我不明白为什么第一次无法正常返回正确的形状 - 我假设选择集合比满足眼睛更复杂,我也不明白为什么Selection.ShapeRange.Count选择一个图表时失败,但当一个图形处于成功状态时失败。
将不胜感激阐明这