[英]Pull data from multiple worksheets using Excel as database
如果您建议我如何使用 ADODB 记录集从多个 Excel 工作表中查询和提取数据,那将非常有帮助。 下面是我的 VBA 脚本,它向我抛出“类型不匹配错误”。
VBA代码:
Dim sSQLQry As String
Dim conn As New ADODB.connection
Dim mrs As New ADODB.Recordset
Dim DBpath As String
Dim sconnect As String
Private Sub Generate_Testcase_Click()
DBpath = ThisWorkbook.FullName
sconnect = "Provider=MSDASQL.1;DSN=Excel Files;DBQ=" & DBpath & ";HDR=Yes';"
conn.Open sconnect
sSQLQry = "SELECT TOP 1 [Sheet1$].EMPLOYEEID FROM [Sheet1$] INNER JOIN [Sheet2$] ON [Sheet1$].EMPLOYEEID =[Sheet2$].PPTID AND [Sheet2$].UNION_CD =[Sheet1$].UNID"
mrs.Open sSQLQry, conn, adOpenStatic, adLockReadOnly
MsgBox mrs.Fields(0) & " , " & mrs.Fields(1)
mrs.Close
conn.Close
End Sub
我也尝试了以下查询,但仍然出现同样的错误。
sSQLQry = "SELECT TOP 1 [Sheet1$].EMPLOYEEID FROM [Sheet1$], [Sheet2$] WHERE [Sheet1$].EMPLOYEEID =[Sheet2$].PPTID AND [Sheet2$].UNION_CD =[Sheet1$].UNID"
请帮我解决问题。
最后,我发现了问题,两列 [Sheet1$].EMPLOYEEID 和 [Sheet2$].PPTID 的格式不同。 一旦我将两列都更改为相同的格式,问题就得到了解决。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.