这是一个非常简单的问题,但我已经为此头疼了一个小时。我正在尝试执行以下操作:
- 从我的电子表格中的命名范围定义一个 VBA 数组
- 访问该数组中的项目
现在,如果命名范围恰好覆盖了多维区域(行和列),那么这可以正常工作:
foobar = Range("two_dimensional_range")
MsgBox foobar(1,1)
但是,如果命名范围由单个维度(只是一列)数据组成,则会产生“下标超出范围”错误:
foobar = Range("one_dimensional_range")
MsgBox foobar(1)
我已经验证 foobar 确实是一个数组。我可以用 For Each ... Next 遍历它。如果我调用 Ubound(foobar) 那么它会给我正确的大小。我只是不能直接访问它的单个元素!
我究竟做错了什么?