Хмуриться (Ошибка) Сообщение об ошибке: «Значение не попадает в ожидаемый диапазон». - на ListObjects.Add (). QueryTable - PullRequest
0 голосов
/ 05 октября 2019

У меня есть следующий код, который использует Microsoft Access Text Drive для объединения двух CSV-файлов. Код работает правильно, если в пути к файлам нет пробелов, в противном случае выдается сообщение об ошибке « Синтаксическая ошибка в предложении 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

Но есть еще одна проблема, которая возникает, когда я добавляю QueryTable. Обратите внимание, что в рабочей книге не определено никаких запросов мощности:

Frown (ошибка) Сообщение об ошибке: «Значение не попадает в ожидаемый диапазон».

Я вставляю весь текст ниже:

    Feedback Type:
Frown (Error)

Error Message:
Value does not fall within the expected range.

Stack Trace:
   at Microsoft.Mashup.Client.Excel.NativeExcelFunctionsBase.ValidateResult(Int32 result, Int32[] expectedValues)
   at Microsoft.Mashup.Client.Excel.NativeExcelFunctionsMSI.Microsoft.Mashup.Client.Excel.INativeExcelFunctions.GetConnectionProperties(IntPtr workbookPointer, String connectionName)
   at Microsoft.Mashup.Client.Excel.NativeEventHandler.<>c__DisplayClass27.<OnListObjectCreated>b__25()
   at Microsoft.Mashup.Host.Document.ExceptionHandlerExtensions.HandleExceptions(IExceptionHandler exceptionHandler, Action action)

Stack Trace Message:
Value does not fall within the expected range.

Invocation Stack Trace:
   at Microsoft.Mashup.Host.Document.ExceptionExtensions.GetCurrentInvocationStackTrace()
   at Microsoft.Mashup.Client.UI.Shared.FeedbackErrorInfo..ctor(String message, Exception exception, Nullable`1 stackTraceInfo)
   at Microsoft.Mashup.Client.Excel.Native.NativeUserFeedbackServices.ReportException(IWindowHandle activeWindow, IUIHost uiHost, FeedbackPackageInfo feedbackPackageInfo, Exception e, Boolean useGDICapture)
   at Microsoft.Mashup.Client.UI.Shared.UnexpectedExceptionHandler.<>c__DisplayClass1.<HandleException>b__0()
   at Microsoft.Mashup.Client.UI.Shared.UnexpectedExceptionHandler.HandleException(Exception e)
   at Microsoft.Mashup.Host.Document.ExceptionHandlerExtensions.HandleExceptions(IExceptionHandler exceptionHandler, Action action)
   at Microsoft.Mashup.Client.Excel.ExcelCallbackManager.InvokeAndReturnHResult(Action action)


Supports Premium Content:
True

Не уверен, но где-то что-то не так! Цените чью-либо помощь в решении этой проблемы.

...