位置:首页 > 软件操作教程 > 办公软件 > Excel > 问题详情

如何使用SQL语句实现对Excel工作表数据进行查询?

提问人:周丽平发布时间:2021-08-23

1、启动Excel并打开工作簿,在这个工作簿中,工作表Sheet1放置商品信息记录,如图1所示;工作表Sheet2用于对商品记录进行查询,其结构如图2所示。

image.png

图1 放置商品信息记录的工作表

image.png

图2 用于商品记录查询的工作表

2、打开Visual Basic编辑器,在工程资源管理器中插入一个模块,在模块的“代码”窗口中输入如下程序代码:

Sub CheckData()

Dim cnn As ADODB.Connection '声明连接对象变量

Dim rs As ADODB.Recordset '声明记录集对象

Dim strSql As String

Dim str As String

On Error Resume Next

Set cnn=CreateObject("ADODB.Connection") '创建连接对象变量

Set rs=CreateObject("ADODB.Recordset") '创建记录集对象记录

cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;"_&"Extended Properties=Excel 8.0;"_&"Data Source="&ThisWorkbook.FullName

str=ActiveSheet.Range("B1").Value '获取当前单元格内容

strSql="Select*FROM[Sheet1$]Where商品like '%"&str&"%'"'创建数据筛选命令

rs.Open strSql,cnn,adOpenStatic

With ActiveSheet

.Range("A4:D100").ClearContents '清除单元格记录

.Range("A4").CopyFromRecordset rs '复制筛选结果

End With

rs.Close

cnn.Close

Set rs=Nothing

Set cnn=Nothing

End Sub

3、首先在Sheet2工作表中输入需要查询的商品名称,如图3所示。运行CheckData()过程,在Sheet2工作表中将列出查询结果,如图4所示。

image.png

图3 输入商品名称

image.png

图4 获得查询结果

继续查找其他问题的答案?

回复(0)
返回顶部