今天我们继续excel VBA的数据类型讲解
了解其结构以及赋值
在然后VBA的编程中大有帮助
9、枚举型
格式:Public 或 Private Enum 变量名
成员1 [= 常数表达式1]
成员2 [= 常数表达式2]
……
End Enum
示例:Public Enum names
马云 = 0
马化腾 = 2
李彦宏 = 3
雷军 = 5
周鸿祎 = 6
End Enum
Function h(ByVal a As names)
h = a
End Function
Sub name()
MsgBox h(周鸿祎)
End Sub
注释: ByVal(按值传递)
ByRef(按地址传递)
枚举型通过标签去调用标签的值
10、一维数组
格式:Dim 数组名(a to b) As 数据类型
其中:a为起始顺序数,b为终了顺序数 b-a就是元素间隔数。当然a、b也是可以省略的
获取数组最小下标LBound(数组名)
获取数组最大下标UBound(数组名)
数组赋值 数组名=array(元素1,元素2,……)
示例:sub 关注咕吧()
dim aa()as variant
aa=array(1,2,3,4,5)
debug.print aa(0)
end sub
提示:数组要直接赋值的一定得定义成变量型数据variant或者不声明 只是dim aa 否则出错 不能继续
11、多维数组
格式:数组名(行数,列数)(二维数组)
格式:数组名(行数、列数、深数)(三维数组)
sub 来关注()
arr = [{"1","A";"2","B";"3","C"}]
debug.print arr(1, 2)
end sub
注释:二维数组直接赋值方法就是前面不能出现dim来定义 也不能用array来赋值 否则就报错
数组的赋值可以从单元格来读取
如何读取单元格的内容来给数组赋值呢?
Sub 关注赋值()
Dim arr As Variant
Dim a
arr = Range("A1:A6")
arr1 = Range("A1:B6")'默认的赋值是二维数组的,因为单元格的格式为Cells(行号,列号)
a = Application.WorksheetFunction.Transpose(arr)'调用excel转置函数变成一维数组,如不转就arr(从1开始的顺序号,1)
Debug.Print a(5)
Debug.Print arr1(1, 2)
End Sub
注意:数组的赋值,直接赋值动态数组顺序号从0开始到n-1,如指定起始号如 a(10 to 20)就按实际来
如用单元格赋值,顺序号从1开始到n
由于字典的操作方法比较多 故放在下期介绍 敬请期待!
怎么样?都会了吗?
赶紧练练手吧
简单 有料 明了 不晕菜就在咕吧课堂
能看到就是缘分 关注咕吧课堂
错过了,我到哪里去寻你?
学好 做好 活好