sql - Excel VBA - 通过sql查询从不同目录中的另一个工作簿导入数据(无Open.file方法)
问题描述
我无法从外部工作簿收集数据并进行复制。我可以在同一个工作簿中完成;但我无法写下路径或丢失的东西。该问题可能与shRead()
.
Sub ReadFromWorksheetADO()
Dim connection As New ADODB.connection
Dim sourceFile, wFile As String
Dim shRead, shWrite As Worksheet
Set shWrite = ThisWorkbook.Worksheets("D2")
sourceFile = "\\X\Y\Z\3_6\deneme6.xlsm"
connection.Open "Provider=Microsoft.ACE.OLEDB.12.0;" & _
"Data Source='\\X\Y\Z\3_6\deneme6.xlsm';" & _
"Extended Properties=""Excel 12.0;HDR=YES;IMEX=1;"";"
' Not sure need this definition -> wFile = ThisWorkbook.Path & Application.PathSeparator & "CurrentWB.xlsm"'
shRead = "[Excel 12.0;HDR=YES;DATABASE=" & sourceFile & "]"
Dim query As String
query = "Select * from [" & shRead.Name & "$] Where Item='1' "
'Alternative one -> query = "Select * from [R3.6$] Where Item='1' "'
Dim rs As New ADODB.Recordset
rs.Open query, connection
shWrite.Range("A2").CopyFromRecordset rs
connection.Close
End Sub
解决方案
推荐阅读
- c++ - 如何修复 C++ 中的“指针和整数之间的比较”错误?
- python - 如何为不使用 Estimator 训练的 Tensorflow 模型编写服务输入函数?
- opengl - 将 OpenGL 与 QtQuickPainted 项目一起使用
- mysql - 连接查询中的 SET 表名
- java - JSON 读取对象值
- iso8583 - Qserver和Qmux的实现
- python - NameError:(我可以更早地运行此代码,但现在不行了,可能是一些更新?)
- google-apps-script - 如何获取旧版本的 Google 电子表格数据?
- c# - 是否可以从 C# 应用程序中运行特定的 Gauge 规范
- javascript - 使用 truclient 在 javascript 代码中复制粘贴文本