Подключение к базе данных Excel 2013 VBA - PullRequest
0 голосов
/ 29 мая 2018

У меня проблема с VBA в Excel 2013.

Я спрашиваю параметр и затем создаю ключ для SQL, но если я пытаюсь использовать его, если оставляю строку .Refresh BackgroundQuery:=False, я получаю

1004 Ошибка времени выполнения

Если я обрежу его, передача не сработает ... какие-либо предложения?

Я написал этот код:

Bolla = InputBox("Numero Bolla?", "bolla", " ", 3000, 5000)

CHIAVE = "CCI " & bolla

Sheets.Add
    ActiveSheet.Name = ("Trasferimento")

 With ActiveSheet.ListObjects.Add(SourceType:=0, Source:= _
        "ODBC;DSN=CCI_DATV3;", Destination:=Range("$A$1")).QueryTable
        '.CommandType = 0
        .CommandText = Array( _
        "SELECT §FIEB01L.NUDOS, §FIEB01L.RASCS, §FIEB01L.DASPS, §FIEB01L.DESTS, §FIEB01L.DEFIS, §FIEB01L.DESCS, §FIEB01L.QTISS, §FIEB01L.COSTS, §FIEB01L.BOBIS, §FIEB01L.TESIS, §FIEB01L.TESES, §FIEB01L.ORPRS FR" _
        , "OM CCI_DATV3.§FIEB01L WHERE ((§FIEB01L.NUDOS=" & CHIAVE & "))")
    .RowNumbers = False
    .FillAdjacentFormulas = False
    .PreserveFormatting = True
    .RefreshOnFileOpen = False
    .BackgroundQuery = True
    .RefreshStyle = xlInsertDeleteCells
    .SavePassword = False
    .SaveData = True
    .AdjustColumnWidth = True
    .RefreshPeriod = 0
    .PreserveColumnInfo = True
    .ListObject.DisplayName = "Tabella_Query_da_CCI_DATV3"
    .Refresh BackgroundQuery:=False
End With

1 Ответ

0 голосов
/ 30 мая 2018

Я думаю, что проблема может быть в свойстве .CommandText.Попробуйте установить его:

.CommandText = "SELECT §FIEB01L.NUDOS, §FIEB01L.RASCS, §FIEB01L.DASPS, §FIEB01L.DESTS, §FIEB01L.DEFIS, §FIEB01L.DESCS, §FIEB01L.QTISS, §FIEB01L.COSTS, §FIEB01L.BOBIS, §FIEB01L.TESIS, §FIEB01L.TESES, §FIEB01L.ORPRS FROM CCI_DATV3.§FIEB01L WHERE §FIEB01L.NUDOS ='" & CHIAVE & "'"

Я просто удалил функцию Array(), удалил запятую после переноса строки и лишние скобки в запросе.Учитывая тот факт, что CHIAVE является строкой, в запрос также были добавлены апострофы.

Кроме того, .CommandType должен быть установлен в xlCmdSql

Дайте мне знать, если это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...