在操作使用Access过程中,会出现,编译错误:缺少用户定义类型,不是工程,点击确定后,出现Dim str As Database的错误,如下图:
解决方法:
先检查代码写法,检查引用项,确认已经引用DAO项 ,即 Dim str As Database 不要用省略写法,要写全为 Dim str As DAO.Database ,保存在运行,问题解决!
注:Database是DAO下面的子对象,和ADO没有关系
如果你引用了2个库 都有同样名称的对象
那么会根据优先级的顺序来决定以哪个为准
就好比excel和sheet
对应dao和database
编程对象里面,都会有一个顶级对象
然后下面会有N个子对象
而每个子对象下面还可能有N个子对象
一层套一层
DAO就是最顶级的对象
而Database是它下面一级的对象,如下图:
所以定义Dim str As Database就必须要定义全 即Dim str As DAO.Database