永发信息网

请教:怎么在excel中正确使用SQL的查询语句

答案:1  悬赏:0  手机版
解决时间 2021-03-09 07:26
请教:怎么在excel中正确使用SQL的查询语句
最佳答案
ALT+F11,打开VBE,插入一个模块,把以下代码复制进去:
Sub dosql(sql, a As Range)
Dim Conn As Object
Set Conn = CreateObject("ADODB.Connection")
Set rst = CreateObject("ADODB.Recordset")
PathStr = ThisWorkbook.FullName
Select Case Application.Version * 1
Case Is <= 11
strConn = "Provider=Microsoft.Jet.Oledb.4.0;Extended Properties=excel 8.0;Data source=" & PathStr
Case Is >= 12
strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & PathStr & ";Extended Properties=""Excel 12.0;HDR=YES"";"""
End Select
Conn.Open strConn
Set rst = Conn.Execute(sql)
If VBA.InStr(sql, "select") > 0 or VBA.InStr(sql, "Select") > 0 Then
With a.Parent
For i = 0 To rst.fields.Count - 1
.Cells(1, a.Column + i).EntireColumn.ClearContents
.Cells(1, a.Column + i) = rst.fields(i).Name
Next
End With
a.Offset(1).CopyFromRecordset rst
For i = 0 To rst.fields.Count - 1
a.Parent.Cells(1, a.Column + i).EntireColumn.AutoFit
Next
End If
Conn.Close
End Sub

Public Sub t()
'sql = "这里写你的查询语句"
dosql sql, [E1]
End Sub

1、记得运行代码前要保存工作簿
2、查询语句中,表名是[工作表名$]这样的格式
3、dosql sql, [E1]中的E1,就是要放查询结果的区域左上角那个单元格。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
有什么好看的吸血鬼的耽美文???
很厚的礼是什么意思
描写高粱的句子
把打人者拘留期满后,可以到法院起诉我的货车
在某工程施工过程中,工程师检查实际进度时发
大家评价一下这句话“如果你没有外在美,没有
思月书院地址在什么地方,想过去办事
真有博弈盒这个东西吗?
Vulpius手术适用于A.腓肠肌挛缩引起的马蹄足
帕萨特1.8t自动档挂档走起就一抖一抖
电动牙刷比价选购,电动牙刷哪款好,性价比最
北京广港通网络有限公司山东淄博服务中心地址
下图中有世界最宽的海峡,bac为晨昏线。回答
家长喜欢睡懒觉给孩子带来哪些危害
从化镇泰集团的宿舍住多少人的?环境怎样?是
推荐资讯
狼用繁体字怎么写??
【鱼的5个鳍分别是干什么用的要做实验,就是把
西门子热水器怎么调温度?
雪铁龙世嘉三厢自动变速箱故障 SERVICE灯亮
如何可以让大腿显得很瘦求大神帮助
港瑞·金墅湾地下停车场地址有知道的么?有点
请问外国企业在中国的分公司是否属于非居民企
【谬种】谬种是什么意思
14年10月7号9点52哪里地震
别董大中的董大是谁
我想和你在一起直到时间停止用德语怎么说
螃蟹里白色线条物是什么
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?