Я хотел бы попросить некоторую помощь, вот контекст: я использую книгу Excel, подключенную к моему SQL Server с ODBC, поэтому пользователь может ее использовать для создания некоторых запросов с использованием некоторых кнопок макросов +.Как отобразить ошибку синтаксиса SQL из пользовательской формы Excel VBA
Он спросил меня, возможно ли создать интерфейс между Excel и SQL Server, например, если вы используете СУБД, показывая пользовательскую форму для ввода запроса, и если вы получите некоторую синтаксическую ошибку, она будет показана тебе).
Вот моя проблема: я успешно создал интерфейс, но не могу показать Синтаксическую ошибку. Появляется только сообщение: «Ошибка времени выполнения» 1004 «Синтаксическая ошибка SQL».
Возможно ли показать точное сообщение, как если вы используете СУБД?
Чтобы было легче понять, вот мой код:
Function Query(SQL As String)
On Error GoTo Err_handler
With ActiveSheet.QueryTables.Add(Connection:= _
"ODBC;DSN=mydb;Description=test;UID=test;PWD=test;APP=Microsoft Office 2003;WSID=test123" _
, Destination:=Range("A1"))
.CommandText = (SQL)
.Name = "test"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:=False
End With
Exit Function
Err_handler:
MsgBox Err.Number & " - " & Err.Description
End Function
Заранее спасибо!
Я думаю, что вам нужно разместить свой код для получения дополнительной информации. Возьмите [тур] (http://stackoverflow.com/tour) для этого сайта. –
Привет, Николас, спасибо за ваше предложение, я отредактировал сообщение. –