我无法使此代码正常工作。第一次运行它时,它提示我输入密码并且每次都完成宏,但不会将结果拖入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