Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2644|回复: 3

excelVBA中用sql查询数据,想用inputbox输入查询的字段值

[复制链接]
发表于 2020-1-6 22:23 来自手机 | 显示全部楼层 |阅读模式
本帖最后由 ricerose 于 2020-1-6 23:11 编辑

有两个excel表格,用一个表格调用另一个表格中的数据,用的是sql语句,想用inputbox输入查询的字段值,比如 查询 "姓名=A1"的人的信息,  但是报错,希望帮忙解决,谢谢

sql查询.rar

134.29 KB, 下载次数: 27

发表于 2020-1-7 16:30 | 显示全部楼层
本帖最后由 砂海 于 2020-1-7 16:32 编辑

.xlsx 没搞定 , .xls 如下

Private Sub CommandButton1_Click()
Dim cnn As Object, SQL$
a = InputBox(" ", , "A1")
Set cnn = CreateObject("ADODB.Connection")
    cnn.Open "provider=microsoft.jet.oledb.4.0;extended properties=excel 8.0;data source=" & ThisWorkbook.Path & "/基数数据.xls"
    SQL$ = "Select * from [Sheet1$] where 姓名 like '" & a & "'"         '文本值前后 要加 单引号 , 日期值 前后加 #
   [a2].CopyFromRecordset cnn.Execute(SQL)
   cnn.Close
    Set cnn = Nothing
End Sub
回复

使用道具 举报

发表于 2020-1-7 16:41 | 显示全部楼层
.xlsx 用这句

cnn.Open "Provider=Microsoft.Ace.OleDb.12.0;" + "data source=" & ThisWorkbook.Path & "/基数数据.xlsx" & ";Extended Properties='Excel 12.0; HDR=Yes; IMEX=1'"
回复

使用道具 举报

 楼主| 发表于 2020-1-18 08:43 来自手机 | 显示全部楼层
多谢老师的帮助,问题解决了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-19 20:03 , Processed in 0.306215 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表