使用Type语句来定义用户定义类型:
[Private Public] Type...
用户定义类型(User-Defined Type,简称UDT)可以方便地在一个变量中存储相关数据,是编程者自已设置的数据类型。
使用Type语句来定义用户定义类型:
[Private Public] Type 用户定义类型名称
元素名称As 类型
元素名称As 类型
……
End Type
说明:
一个用户定义类型可以包括一个或多个元素
必须在模块的声明部分编写用户定义类型
在用户定义类型作用域范围内可以声明变量为用户定义类型
元素名称可以是数组
类型可以是另一个用户定义类型
用户定义类型可以用于构建高级数据结构,如队列、链表和栈
下面的代码定义了一个简单的UDT:
Public Type udtStudent
Num As Integer
Name As String
Age As Integer
End Type
可以在UDT中使用其他的UDT,如下所示:
Public Type udtGrade
Chinese As Integer
Math As Integer
excel自定义枚举常量
VBA提供了一些内置枚举常量,例如MsgBox函数的buttons参数成员vbOkOnly、vbOkCancel等,可以在程序中方便使用,并且这些常量可读性好,便于程序维护。当然,你可以创建自已的枚举常量,用于自已的代码。 使用Enum语句来创建枚举常量。Enum语句用于定义常量的名称、其内部各常量成员的名称以及对应
English As Integer
End Type
Public Type udtStudent
Num As Integer
Name As String
Age As Integer
Grade As udtGrade
End Type
注意,被引用的UDT必须放置在引用的UDT之前,如上面的代码所示。
创建一个UDT类型的数组:
Private students(10) AsudtStudent
给UDT中的数据赋值:
students(0).Num = 1
students(0).Name =”Jessica”
students(0).Age = 9
students(0).Grade.Chinese = 95
下面的代码可以判断UDT中元素的类型:
Private MyGrade As udtGrade
If TypeOf MyGrade Is udtGradeThen
Debug.Print “这个用户定义类型是udtGrade.”
End If
Debug.PrintTypeName(MyGrade.Chinese)
结果如下所示。
什么情况下使用INDEX函数?
什么情况下使用INDEX函数? INDEX函数可以返回一个值或者对某值的引用,因此可以使用该函数来: 查找所选月份的销量 获取对指定行、列、区域的引用 基于给定数目创建动态区域 以字母顺序排序文本列 INDEX函数的语法 INDEX函数有两种语法形式—数组和引用。使用数组形式,返回值;使用引用形式,返回引