Таблица запросов на добавление VBA 2010: ошибка приложения или объекта - PullRequest
0 голосов
/ 29 ноября 2011

Если бы он функционировал должным образом, следующий код извлек бы имя таблицы из текстового поля, связал бы его с «описанием» и затем поместил бы результаты в таблицу запросов. В действующем коде происходит сбой с сообщением «Ошибка времени выполнения 1004: ошибка приложения или объекта»

Private Sub cmdNew_Click()

Dim TableName As String
Dim NewSheet As Excel.Worksheet
Dim ConnString As String
Dim SQLStatement As String

ConnString = ConnString = "DSN=REMOVED;UID=REMOVED;;DBQ= REMOVED;DBA=W;APA=T;EXC=F;FEN=T;QTO=T;FRC=10;FDL=10;LOB=T;RST=T;BTD=F;BNF=F;BAM=IfAllSuccessful;NUM=NLS;DPM=F;MTS=T;MDI=F;CSR=F;FWC=F;FBS=64000;TLO=O;MLD=0;ODA=F;"
TableName = ActiveSheet.txtTableName.Text
SQLStatement = "desc " & TableName

Set NewSheet = Sheets.Add
NewSheet.Name = TableName

Set qry = NewSheet.QueryTables.Add(ConnString, NewSheet.Range("A1"), SQLStatement)
qry.Refresh

End Sub

1 Ответ

0 голосов
/ 29 ноября 2011

Если вы запрашиваете базу данных Oracle, ключевое слово DESC предназначено для сортировки столбца в порядке убывания, попробуйте использовать ключевое слово DESCRIBE полностью.

Если это не сработает, тогда запустите ваш запрос к серверу БД за пределами Excel и посмотрите, даст ли он более полезное сообщение?

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