本文介绍利用VBA创建查询的方法,并给出一个示例,供网友参考,示例中根据网友的问题利用交叉表方法建立了查询模板,然后利用创建查询的方法,在交叉表查询的基础上创建了一些新查询,能满足交叉表查询的后续补充功能。
附 件:
点击下载此附件
创建查询的方法:CreateQueryDef
其具体步骤如下:
1、定义数据库变量
Dim 数据库变量 As Database
例:Dim db As Database
2、定义用于创建查询的变量
Dim 查询变量 As QueryDef,例:Dim qdf As QueryDef
3、设置数据库
Set 数据库变量 = OpenDatabase("数据库名称.mdb")
例:Set db = OpenDatabase("Northwind.mdb")
特殊的数据库设置,设置为当前数据库
Set 数据库变量 = CurrentDb
例:Set db = CurrentDb
4、使用创建查询的方法创建查询
Set 查询变量 = db.CreateQueryDef("查询的名称", 查询字符串)
s2="select * from 表名"
例:Set qdf = db.CreateQueryDef("按科目2", s2)
Set qdf = db.CreateQueryDef("按科目查询成绩", "select * from 成绩 where 科目='数学'")
利用VBA创建查询有助于数据库具有相应的智能,比如我们先设计一些查询的模板,然后在此基础上利用创建查询的方法自动创建所需的查询,这样开发出来的数据库会具有更优越的性能。