これは非常に単純な問題ですが、私は1時間頭を悩ませてきました。私は次のことをしようとしています:
- スプレッドシートの名前付き範囲からVBA配列を定義する
- その配列内のアイテムにアクセスする
ここで、名前付き範囲が多次元領域(行と列)をカバーしている場合、これは正常に機能します。
foobar = Range("two_dimensional_range")
MsgBox foobar(1,1)
ただし、名前付き範囲がデータの単一のディメンション(列のみ)で構成されている場合、「添え字が範囲外」エラーが発生します。
foobar = Range("one_dimensional_range")
MsgBox foobar(1)
foobarが実際には配列であることを確認しました。For Each...Nextで繰り返すことができます。Ubound(foobar)を呼び出すと、正しいサイズが得られます。私はそれの単一の要素に直接アクセスすることはできません!
私は何が間違っているのですか?