Excel
微信公众号原文
系统:Windows 7
软件:Excel 2016
- 本系列讲讲数组功能
- 今天说说如何定义数组
Part 1:背景
- 数组有1维,2维,3维等多个维度。这个系列主要讲1维和2维数组,一般也就够用
- 1维数组简单理解就是1行数据
- 2维数组简单理解就是1个Excel的工作表,有行和列两个维度
- 数组一般是用于在程序运行过程中临时存储数据,从1-2维数组的作用来看,完全可以使用Excel工作表来代替。数组的优势在于它是临时存在于内存中,无需写入硬盘中,它的读写速度非常快
Part 2: 数组的定义
- 以下实现了三种方式定义数组
- 已知数组的行和列数,
Dim arr(1 To 3, 1 To 2)
,行号范围为1-3,列号范围为1-2 - 刚开始未知数组的行和列数,在程序运算的过程中得知当前的行数和列数,
ReDim arr(0 To 2, 2 To 3)
- 通过
Array
直接赋值
- 已知数组的行和列数,
Part 3: 代码
Sub test1()Dim arr(1 To 3, 1 To 2)arr(1, 1) = 1arr(1, 2) = 2arr(2, 1) = Truearr(2, 2) = Falsearr(3, 1) = "Yes"arr(3, 2) = "ok"End Sub
运行结果
Sub test2()Dim arr()ReDim arr(0 To 2, 2 To 3)arr(0, 2) = 2arr(0, 3) = 3arr(1, 2) = 4arr(1, 3) = 5arr(2, 2) = 6arr(2, 3) = 7
End Sub
运行结果
Sub test3()arr1 = Array(1, 2, 3)arr2 = Array(Array(1, 2, 3), Array(4, 5, 6))arr3 = Array(Array(1, 2, 3), Array(4, 5, 6), Array(7, 8, 9))
End Sub
运行结果
Part 4: 部分代码解读
arr(1 To 3, 1 To 2)
表示行号从1到3,列号从1到2,是一个3X2的数组,可以理解为一个Excel的单元格区域arr(1, 1) = 1
,给行号为1列号为1的区域赋值为1,类似Excel,不同的单元格可以赋值不同数据类型的值ReDim arr(0 To 2, 2 To 3)
,假如我们在刚建立数组时,并不知道它的行数和列数,可能通过一番运算才知道行数为m,列数为n,那么可以通过该方法定义为ReDim arr(1 To m, 1 To n)
arr1 = Array(1, 2, 3)
定义1维数组,注意这种方式定义的数组,索引默认从0开始arr2 = Array(Array(1, 2, 3), Array(4, 5, 6))
,这种方式相当于定义2行单元格,列数为3
- 更多学习交流,可加小编微信号
learningBin
更多精彩,请关注微信公众号
扫描二维码,关注本公众号
发布评论