用SQL读取excel数据[亲测有效]

用SQL读取excel数据[亲测有效]子程序代码如下:参数说明:DataName存放全路径EXCEL文件名 strSql 需要执行的select语句 Arr 是查询后的返回值Sub

欢迎大家来到IT世界,在知识的湖畔探索吧!

SQL语句处理数据有其特殊的优势,为此最近做一个任务就是把EXCEL数据表当成数据库进行处理,大量使用了表的连接等操作,而每次连接数据库时,要设置连接字符串,打开连接,完成后还要关闭。为此,把这些封装在一个子程序中执行,减少了编程中的代码量,还减少代码出错的概率。

子程序代码如下:

参数说明:DataName 存放全路径EXCEL文件名 strSql 需要执行的select语句 Arr 是查询后的返回值

Sub myQuery(DataName As String, strSql As String, ByRef Arr)

Dim conn As Object

Dim Rst As New ADODB.Recordset

Dim strConn As String

Dim PathStr As String

Dim i As Integer

Set conn = CreateObject(“ADODB.Connection”)

Select Case Application.Version * 1 ‘设置连接字符串,根据版本创建连接

Case Is <= 11

strConn = “Provider=Microsoft.Jet.Oledb.4.0;Extended Properties=excel 8.0;Data source=” & DataName

Case Is >= 12

strConn = “Provider = Microsoft.ACE.OLEDB.12.0;Data Source=” & DataName & “;extended properties=””excel 12.0;HDR=YES”””

End Select

conn.Open strConn ‘打开数据库链接

Rst.Open strSql, conn, 1, 3

‘Set Rst = conn.Execute(strSql) ‘执行查询,并将结果输出到记录集对象

If Rst.RecordCount > 0 Then

Arr = Rst.GetRows

End If

Rst.Close ‘关闭数据库连接

conn.Close

Set conn = Nothing

Set Rst = Nothing

End Sub

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/17875.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们YX

mu99908888

在线咨询: 微信交谈

邮件:itzsgw@126.com

工作时间:时刻准备着!

关注微信