- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Excel VBA 编程 典型实例——读取 ACCESS 数据
利用 VBA ,不仅可以对文本文件进行操作,还可以对Office其他组件进行操作。例如,通过ADO 读取ACCESS 中的数据,这样使得Excel更加灵活。
练习要点
使用 ADO 连接查询数据库数据
操作步骤
启动 Excel 200,7 并打开VBE 窗口,新建一个用户窗体,设置其 Caption为“人员信息查询”。
添加控件在该窗体中,添加一个多页控件,设置其中一个页为“查找”,并在该页中添加如图 18-8所示的控件。
添加控件
图 18-8 添加控件
设置另一个页为“资料”,并添加如图 18-9所示的控件。
设置“资料”页图
设置“资
料”页
添加在页控件下面添加一个命令按钮,并设置其 Caption属性为“关闭”,如图18-10所示。
添加
图 18-10 添加按钮
打开该窗体的【代码】窗口,在窗体的Initiali事ze件代码。
声明 ADO 连接对象
声明 ADO 连接对象
Dim cnn As ADODB.Connection 声明 ADO 命令对象
Dim cmd As ADODB.Command
Private Sub UserForm_Initialize()
Dim strCon As String 为复合框添加数据
cbxFind.AddItem身份证号码 cbxFind.AddItem 姓 名 cbxFind.AddItem 出 生 日 期 cbxFind.AddItem 单 位 名 称 cbxFind.ListIndex = 0
设置列表框为 3 列
lstInfo.ColumnCount = 3
设置列表框各列的宽度lstInfo.ColumnWidths = 20;100;60
设置列表框各列的宽度lstInfo.ColumnWidths = 20;100;60 新建连接对象
Set cnn = New ADODB.Connection 定义连接字符串
strCon = Provider=Microsoft.Jet.OLEDB.4.0;Data Source= _
ThisWorkbook.Path 数\据库.mdb 设置连接参数
cnn.ConnectionString = strCon 新建命令对象
Set cmd = New ADODB.Command
打开“查找”页Me.MultiPage1.SelectedItem.Index = 0
End Sub
设置“查找”按钮的Click事件。
Private Sub cmdFind_Click()
Private Sub cmdFind_Click()
声明保存 SQL 语句Dim strSql As String
Dim rs As ADODB.Recordset 说明数组
Dim aRs(100, 3) As String
Dim i As Integer
If txtKey.Value = Then
MsgBox 请输入查询关键字 txtKey.SetFocus
Exit Sub
End If
根据不同字段生成查询
Select Case cbxFind.Value Case 身份证号码
strSql= Select* From 人员信息txtKey.Value %
Case 姓名
strSql= Select* From 人员信息txtKey.Value %
Case 出生日期
Where
Identifcard_iLdike %
Where
Member_Name
Like %
#
判断日期格式是否正确
If IsDate(txtKey.Value) Then
strSql= Select* From 人员信息 Where Birthday=# txtKey.Value
Else
MsgBox 请输入正确的日期格式! txtKey.SetFocus
Exit Sub End If
Case 单位名称
strSql = Select a.Identifcard_id,a.Member_Name,b.unit_name _ From 人员信息 AS a,工作单位 AS b _
Where a.unit_id=b.unit_id AND b.unit_name Like % txtKey.Value
%
End Select
打开 ADO 连接cnn.Open
设置命令对象的连接属性cmd.ActiveConnection = cnn 设置命令对象执行的 SQL 语句cmd.CommandText = strSql
执行 SQL 语句,将结果保存在记录集中Set rs = cmd.Execute()
i = 0
您可能关注的文档
- B2C在线购物分析和总结.docx
- B6竣工移交证书.docx
- B501 桥梁伸缩缝安装现场施工记录.docx
- BAC防水施工方案.docx
- BEC图表题总汇分析和总结.docx
- begoingto表一般将来时知识点及练习题.docx
- BEV组合仪表选型设计报告.docx
- BGP基本实验分析和总结.docx
- BIBO高效过滤单元规格及安装要求.docx
- bim报告分析和总结.docx
- Ecel VBA编程 典型实例——计算月还款金额.docx
- Ecel VBA编程 典型实例——将数组赋值单元格.docx
- Ecel VBA编程 典型实例——录制表格样式.docx
- Ecel VBA编程 典型实例——设计工资录入窗口.docx
- Ecel VBA编程 典型实例—设计客户查询窗口.docx
- Ecel VBA编程 典型实例——使用VBA进行排序.docx
- Ecel VBA编程 典型实例——使用提示对话框.docx
- Ecel VBA编程 典型实例——为财务报表设计保护锁.docx
- Ecel VBA编程 典型实例——显示二维数组中最大值和最小值.docx
- Ecel VBA编程 典型实例——银行贷款计算器.docx
文档评论(0)