Я использую Текстовый драйвер Microsoft Access в SELECT
Запросе к JOIN 2 CSV-файла , расположенным по по разным путям .
В одной из подпапок есть пробел, который называется " TEST FOLDER " исходного пути CSV. Если я переименую его в « TESTFOLDER » и обновлю мой путь csv в коде, запрос будет выполнен правильно. Но если я оставлю это место, это приведет к
Синтаксическая ошибка текстового драйвера Microsoft Access в предложении FROM
Кстати, это могут быть разные сетевые папки.
Option Explicit
Sub Test()
Dim oCon As New ADODB.Connection, oRs As New ADODB.Recordset
Dim strSql$, strCon$, strF1$, strF2$
strF1 = "C:\Users\ADAM\Documents\TEST FOLDER\Names.csv"
strF2 = "C:\Users\ADAM\Downloads\Address.csv"
strCon = "Driver=Microsoft Access Text Driver (*.txt, *.csv);Dbq=" & ThisWorkbook.Path & ";Extensions=asc,csv,tab,txt;"
strSql = "Select n.*, a.[Address] " & _
"From " & strF1 & " n " & _
"INNER JOIN " & strF2 & " a " & _
"ON n.Name = a.Name "
oCon.Open strCon
Set oRs = oCon.Execute(strSql)
' Sheet1.UsedRange.EntireRow.Delete
' Sheet1.Cells(1).CopyFromRecordset oRs
On Error Resume Next
Sheet1.ListObjects(1).Delete
On Error GoTo 0
Dim oQT As QueryTable
Set oQT = Sheet1.ListObjects.Add(xlSrcQuery, oRs, Destination:=Sheet1.Cells(1, 1)).QueryTable
With oQT
.Refresh
End With
End Sub
Я попытался заключить пути csv в [квадратные скобки], «одинарные кавычки», «двойные кавычки», back-ticks
и т. Д., Но я все еще получаю синтаксическую ошибку в предложении FROM.
Буду признателен за помощь в решении этой проблемы.