Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-模块/函数/VBA

用VBA代码取得access表或查询的记录值,赋值给变量或控件

时 间:2008-02-01 14:48:04
作 者:zoutians   ID:995  城市:自贡
摘 要:有时我们想将表或查询的记录值赋予变量或控件,但在Access中不能直接通过SELECT语句来完成...

正 文:

有时我们想将表或查询的记录值赋予变量或控件,但在Access中不能直接通过Select语句来完成,比如有一个销售表结构和数据如下:

     商品        单价      销售量      库存量
    -------------------------------------------------
     电视机     3600        23            16
     洗衣机     1700        36            25
     微波炉       450        45              7

上表展示了某家电商店几样商品某月的销售情况,如果我们想将此表的一些统计值如销售总金额、销售量最大的商品赋给变量,或在窗体上展现出来,应该如何做呢?

可以用VBA的DAO对象来完成这样的工作,很简单的,代码如下:
    Dim MyDb As Database            '定义数据库对象
    Dim MyDs As Recordset           '定义数据集对象
    Set MyDb = CurrentDb               '数据库为当前数据库
上面三条语句完成了基本的对象定义工作,下面的语句用OpenRecordset方法求得销售总金额,其中双引号中可为任何合法的Select语句。
    Set MyDs = MyDb.OpenRecordset("Select Sum(单价*销售量) AS ZJE FROM 销售表")
然后将求得的值赋给变量或控件:
    Dim Zje As Double
    Zje = MyDs.Fields(0)
    Me.Label1.Caption = "本月销售总金额是:"+CStr(Zje)+"元"
销售量最大的商品:
    Set MyDs = MyDb.OpenRecordset("Select 商品 FROM 销售表 Where 销售量=(Select MAX(销售量) FROM 销售表)")
库存最少的商品:
    Set MyDs = MyDb.OpenRecordset("Select 商品 FROM 销售表 Where 库存量=(Select MIN(库存量) FROM 销售表)")



Access软件网官方交流QQ群 (群号:54525238)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助