使用考慮包含多種形狀的工作表時,和一個片段(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選擇一個圖表時失敗,但當一個圖形處於成功狀態時失敗。
將不勝感激闡明這