Sub 第二个()Dim arr()arr = Range("a1:a5") msgbox arr(1) '直接为什么不能,输出arr(1)End Sub这个过程当中,arr是二维数组不是一维数组,在excel vba当中,所有经过单元格直接赋值的数组都是二维数组,因此,输出的时候必须必须是这样的 msgbox arr(1,1)
下标越界range转化的是二维数组另外,array赋值的数组下标从0开始range赋值的数组下标从1,1开始