'改变数组的大小和维数Sub arr1() Dim arr() Dim i As Long ReDim arr(1 To 3) For i = 1 To 3 arr(i) = i Next
Sheet1.Range("rng1").Resize(1, 3) = arr Stop
我是一个初学者,昨晚喵喵老师讲完后,有个小疑问,这里的重新定义数组大小,用 ReDim arr(1,2,3)为什么不可以代替ReDim arr(1 To 3),请老师们讲解一下,谢谢!!要是可以的话,怎么样写才正确!
使用道具 举报
VBA里面的数组有一个维数的概念……
譬如Arr(1,2,3)是一个三维的数组,用N个逗号分隔,就表示这个数组的维数为N+1维的。
而ARR(1 to 3)表示一个一维的数组,他的数组下标是从1到3.
excelVBA定义数组时,如果不使用1to3类似这样的语句来表示数组下标的话,他默认是从0开始,如前面的ARR(1,2,3)其实等效于Arr(0 to 1,0 to 2,0 to 3)
以上是我的一点认识,希望对你有用……
感谢cjch1969朋友在QQ中对我的帮助,cjch1969朋友解释如下:
arr(1,2,3)相当于arr(0 to 1,0 to 2,0 to 3),只是当数组某维下届为0时,可以省略0 to,而直接标明上届,也就是arr(1,2,3)这个样子了
一维数组相当于线段2维数组相当于矩形
3维数组相当于立方体
我现在把cjch1969朋友的回答贴到贴子上,让和我一样不明白的人,也明白一下吧!!
再次感谢cjch1969朋友!!
楼主太客气了,共同学习,共同交流
不一样,三维和一维,6个数和3个数
本版积分规则 发表回复 回帖后跳转到最后一页
小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )
GMT+8, 2024-5-29 19:32 , Processed in 0.347387 second(s), 6 queries , Gzip On, Yac On.
Powered by Discuz! X3.4
Copyright © 2001-2020, Tencent Cloud.