Excel - получение ошибки во время выполнения 1004 Ошибка ODBC - PullRequest
0 голосов
/ 19 января 2019

Я довольно незнаком с кодом VB и пытаюсь решить проблему. Несколько пользователей могут нормально запускать этот макрос, но некоторые получают ошибку времени выполнения 1004, Общая ошибка ODBC. Отладка указывает на последнюю строку ниже. Мне странно, что это просто настройка для подключения к каталогу файлового ресурса. Кто-нибудь знает, что может происходить? Я подтвердил, что у них есть доступ к общему ресурсу.

  Option Explicit
  Sub CreatePolicyTable()
Dim qryTable As QueryTable
Dim rngDestination As Range
Dim strConnection As String
Dim strSQL As String
Dim strParam1 As String
Dim strParam3 As String

Worksheets("Pol Data").Range("A1:A1048576").EntireRow.ClearContents
Call Delete_Named_Ranges

'Define the connection string and destination range.
strConnection = "ODBC;Driver={Microsoft Text Driver (*.txt; *.csv)};" & _
    "DBQ=\\My Folder\;" & _
    "Extensions=asc,csv,tab,txt;"
Set rngDestination = Sheet2.Range("A1")

'Create the SQL string.
strSQL = "SELECT * FROM My_File.csv"

'set the parameter strings
strParam1 = " WHERE state = '" & Sheet5.ComboBox1.Text & "'"
strParam3 = " ;"

'check & build variable parameters depending on whether combobox ticked by user
   strSQL = strSQL & strParam1 & strParam3

'Create the QueryTable.
Set qryTable = Sheet2.QueryTables.Add(strConnection, rngDestination)

'Populate the QueryTable.
qryTable.CommandText = strSQL
qryTable.CommandType = xlCmdSql
qryTable.BackgroundQuery = False
qryTable.Refresh

'Create Named Ranges
ActiveWorkbook.Names.Add Name:="PolData", RefersToR1C1:= _
    "=OFFSET('Pol Data'!R1C1,0,0,COUNTA('Pol Data'!C1),COUNTA('Pol Data'!R1))"
End Sub

Sub Refresh_All()
Call CreatePolicyTable
Worksheets("Competitive Analysis").PivotTables("1").PivotCache.Refresh
Worksheets("Competitive Analysis").Activate
End Sub

Sub Delete_Named_Ranges()
Dim wbBook As Workbook
Dim nName As Name
Set wbBook = ActiveWorkbook
For Each nName In wbBook.Names
    nName.Delete
Next nName
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...