有人能简单易懂的解释下vba中用户定义的数据类型是什么用的吗?和dim...as..有什么区别?

我是菜鸟,看了二级access中模块的这部分搞不懂,谢谢了~
2024-11-25 23:43:26
推荐回答(3个)
回答1:

在VB6 以及相应的VBA里,用户定义的数据类型,只能声明为模块级变量。
下面举例在VBA里声明户定义的数据类型:
Alt + F11进入VB编辑器,[插入] -- [模块],在该模块代码窗口,自定义一个数据类型代码如下:
Public Type MyType
name As String
Id As Integer
End Type

回到任何其他位置,例如Sheer1的代码窗口,编写宏:可以在这个宏里使用刚才自己定义的数据类型
Sub sss()
Dim Myt as MyType '这个MyType就是上面自己定义的数据类型
'开始给变量Myt赋值
Myt.name = "ABC"
Myt.Id = 101
End sub
其实,在VB6里用户类型,类似pascal的结构类型。

回答2:

integer,long,string等等是vb自带数据类型,除了这些,用户自己也可以定义一些数据类型。
用 type 类型名 .... end type 定义结构类型
或enum 类型名 .... end enum 定义枚举类型。

定义了数据类型,还要用该类型名定义变量才能使用,就象integer,long的用法那样。
如在声明区定义:
type Record
name as string
number as string
age as integer
grade as integer
end type

使用时用它来定义变量:
dim R as Record
R.name="szqaly"
R.number="541"
。。。

回答3:

主要是作用范围不一样..