如果在声明数组的时候,不能确定会往这个数组里存储多少个元素,就是说不能预知数组大小。我们可以在定义数组是括号内写空,就是:Dim 数组名 ();
然后在程序里试用ReDim语句来重新制定它大小。
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
Public Sub pss_Dynamic_Array()
'定义一个未知长度的数组arr
Dim arr() As String
Dim n As Long
'统计a列有多少个非空单元格
n = Application.WorksheetFunction.CountA(Range("A:A"))
ReDim arr(1 To n) As String
MsgBox (UBound(arr) - LBound(arr) + 1)
'统计a2到a15不为空的单元格
n = Application.WorksheetFunction.CountA(Range("A2:A15"))
ReDim arr(1 To n) As String
MsgBox (UBound(arr) - LBound(arr) + 1)
End Sub
这里的n就是动态长度。这里你运行一下就可以看到动态数组的神奇功能了。
如果运行不出来,请如图添加数据:
最后
以上就是饱满西装最近收集整理的关于VBA教程初级(六):动态声明数组的全部内容,更多相关VBA教程初级(六)内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复