VBA ListBox ユーザーフォームの SQL 接続/ソースを確立するのに苦労しています。(以下のコードから) 正しい SQL テーブルを Excel シートにインポートできましたが、リストボックスのソースとして同じデータをロードするこれまでの試みはすべて失敗しました。以下のコードは私の同僚に与えられ、私たちのデータベースに適用されました。
Sub SQL_VBA()
Dim sConn As String
Dim oQt As QueryTable
Dim sSql As String
'defining the connection string
sConn = "ODBC;DSN=RISK_DB;UID=;PWD=;"
sConn = sConn & "WSID=;DATABASE=RISK_DB"
sSql = str_SQLText
Set oQt = Sheet1.QueryTables.Add(Connection:=sConn, Destination:=Sheet1.Range("A1"), Sql:=sSql)
With oQt
.Name = "Query from"
.FieldNames = True '' This returns the headers of the tables you need
.RowNumbers = False
.PreserveFormatting = True
.RefreshOnFileOpen = False '' Dont want to refresh file each time it opens
.BackgroundQuery = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:=True
End With
End Sub
ユーザーフォームのデータソースとして SQL テーブルをロードした経験のある人はいますか?