来自其他工作簿的Excel VBA JET SQL查询

来自其他工作簿的Excel VBA JET SQL查询,sql,vba,excel,jet,Sql,Vba,Excel,Jet,我在D:\SampleData.xlsm上有一个文件,其中包含许多带有列和标题的条目。我只需要从该文件中的MyData工作表中查询特定列。当我在这里使用@Parfait建议的方法时: 我得到的错误如所附的截图。我的目标是从这个文件中调出标题为Nazwa,Detaliczna,Specjalna,其中单元格中的Stan值为=1 请问有人能提出一个解决方案吗 Sub-RunSQL() 关于错误转到错误句柄 Dim conn作为对象,rst作为对象 Dim strConnection作为字符串,st

我在D:\SampleData.xlsm上有一个文件,其中包含许多带有列和标题的条目。我只需要从该文件中的MyData工作表中查询特定列。当我在这里使用@Parfait建议的方法时:

我得到的错误如所附的截图。我的目标是从这个文件中调出标题为
Nazwa
Detaliczna
Specjalna
,其中单元格中的
Stan
值为
=1

请问有人能提出一个解决方案吗

Sub-RunSQL()
关于错误转到错误句柄
Dim conn作为对象,rst作为对象
Dim strConnection作为字符串,strSQL作为字符串
Dim i作为整数,fld作为对象
Set conn=CreateObject(“ADODB.Connection”)
Set rst=CreateObject(“ADODB.Recordset”)
'硬编码数据库位置和名称
strConnection=“Provider=Microsoft.ACE.OLEDB.12.0;”_
&“数据源='D:\SampleData.xlsm'_
&“扩展属性=”“Excel 8.0;HDR=YES;”“
strSQL=“选择[MyData$].[Nazwa],[MyData$].[Detaliczna],”_
&“[MyData$].[Specialna]”_
&“来自[MyData$]”_
&“其中[MyData$].[Stan]=1;”
'打开数据库连接
连接开放式结构连接
rst.打开strSQL,康涅狄格州
'列标题
i=0
工作表(“结果”).范围(“A1”).激活
对于rst.字段中的每个fld
ActiveCell.Offset(0,i)=fld.Name
i=i+1
下一个fld
'数据行
工作表(“结果”).Range(“A2”).CopyFromRecordset rst
rst.关闭
关闭连接
MsgBox“已成功运行SQL查询!”,vbInformation
出口接头
错误句柄:
MsgBox错误编号&“=”&错误说明,VBC
出口接头
端接头

尝试在以下行中将“Specialna”替换为“Specjalna”:

 & " [MyData$].[Specialna]" _

最后一列有点拼写错误。