Я не могу заставить этот код работать. В первый раз, когда я запустил его, он подсказал мне мой пароль, и макрос завершается каждый раз, но он не вытягивает результат в sheet1
. Что я могу сделать здесь?Вывести результаты в Excel из базы данных
Sub Update()
ThisWorkbook.Sheets("sheet1").Activate
ThisWorkbook.Sheets("sheet1").Range("A1").Select
Dim strStDt As String
Dim strEnDt As String
Dim strSQL As String
strStDt = ThisWorkbook.Worksheets("lookup").Range("B6").Value
strEnDt = ThisWorkbook.Worksheets("lookup").Range("B5").Value
strSQL = ""
strSQL = strSQL & "SELECT tkt.cntry_istto"
strSQL = strSQL & ",tkt.pod"
strSQL = strSQL & " FROM INTGY.GRUIP tkt"
strSQL = strSQL & " Where tky.year_month_nbr between " & strStDt & " and " & strEnDt
ThisWorkbook.Sheets("sheet1").Activate
ThisWorkbook.Sheets("sheet1").Range("A1").Select
With ActiveWorkbook.Connections(1).ODBCConnection
.BackgroundQuery = True
.Connection = "ODBC;DSN=#EDXX;UID=;;DATABASE=INTGY; AUTHENTICATION=;"
.CommandText = strSQL
.RefreshOnFileOpen = False
.SavePassword = False
.SourceConnectionFile = ""
.SourceDataFile = ""
.ServerCredentialsMethod = xlCredentialsMethodIntegrated
.AlwaysUseConnectionFile = False
.Refresh
End With
End Sub
Ящик Excel, вставленный с моим SQL. Означает ли это, что он работает? Если это так, я могу поместить результаты в sheet1. спасибо за вашу помощь – Matt
Это просто дает вам возможность проверить SQL и убедиться, что он правильно введен - что с ним нет ошибок. Я не знаю, как вставить результаты SQL в Excel, вам придется исследовать это самостоятельно, извините! – puzzlepiece87