這是一個非常簡單的問題,但我一直對我的頭撞了一個小時。我試圖做到以下幾點:Excel VBA - 下標超出單維數組的範圍
- 定義在我的電子表格從命名範圍內的VBA陣列
- 訪問數組中的一個項目現在
,如果指定的範圍恰好覆蓋多維區域(行和列),則該正常工作:
foobar = Range("two_dimensional_range")
MsgBox foobar(1,1)
然而,如果指定的範圍包括數據的一個維度(只是一個列)的,那麼這將產生一個「下標區t的範圍「錯誤:
foobar = Range("one_dimensional_range")
MsgBox foobar(1)
我已驗證foobar是一個真正的數組。我可以用For Each ... Next來遍歷它。如果我叫Ubound(foobar),那麼它會給我正確的尺寸。我無法直接訪問它的單個元素!
我在做什麼錯?
如何foobar的聲明? –