ad

《Excel VBA+SQL数据管理与应用模板开发》_工作效率UP!_1.5 ADO 查询数据的简单例子

网友投稿 143 2023-11-07

【摘要】 本书摘自《Excel VBA+SQL数据管理与应用模板开发》一书中第1章,第5节,韩小良著。

1.5 ADO 查询数据的简单例子

了解了ADO 的 Connection 对象和Recordset 对象的基本知识后,下面我 们介绍两个简单的从Access 数据库和Excel 工作簿中查找数据的例子。

《Excel VBA+SQL数据管理与应用模板开发》_工作效率UP!_1.5 ADO 查询数据的简单例子

图1- 5所示是 一个 Access 数据库,文件名是“销售记录.accdb” 。 其中有两个数据表:“去 年”和“今年”。现在要把“今年”数据表中销售额在10万元以上的店铺数据查找出来,将 其保存到 Excel 工作表。

下面是设计的程序代码。

Sub 从Access数据库中查找数据0

'定义Connection变量、Recordset 对象变量、工作表对象变量ws 、查找字符串变量SQL

Dim cnn As New ADODB.Connection

Dim rs As New ADODB.Recordset

Dim SQL As String

Dim ws As Worksheet

Dim i As Integer

'设置工作表对象,并清除历史数据

Set ws =ThisWorkbook.Worksheets(1)

ws.Cells.Clear

'建立与Access数据库的连接

With cnn

Provider ="microsoft.ace.oledb.12.0"

.ConnectionString="Data Source="&ThisWorkbook.Path &"\销售记录.accdb"Open

End With

'设置查找语句

SQL="select*from 今年 where 实际销售金额>=100000"

'执行查询

rs.Open SQL,cnn,adOpenKeyset,adLockOptimistic

'复制字段名称,制作报表标题

Fori=1To rs.Fields.Count

ws.Cells(1,i)=rs.Fields(i-1).Name

Next i

'复制查询数据集的结果到工作表

Range("A2").CopyFromRecordset rs

'关闭查询数据集和ADO连接,释放变量

rs.Close

cnn.Close

Set rs =Nothing

Set cnn =Nothing

End Sub

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:《Python学习笔记 从入门到实战》_更了解Python的途径之一_9.4.1 什么是闭包
下一篇:《Python学习笔记 从入门到实战》_更了解Python的途径之一_8.1 模块 包和迭代器
相关文章

 发表评论

暂时没有评论,来抢沙发吧~