前提
・Windows認証でログインする
※SQL Server認証の方法も記載しているがコメントアウトしている
・テーブル「m_product」へSELECT文を発行する
サンプルプログラム
Option Explicit
'===============================
'接続文字列
'===============================
'プロバイダ
Const PROVIDER = "MSOLEDBSQL"
'サーバー名(サーバーのPC名\インスタンス名)
Const SERVER_NAME = "localhost\SQLEXPRESS"
'DB名
Const DB_NAME = "sampleDB"
'ユーザー名
'Const USER_NAME = "sampleUserName"
'パスワード
'Const PASSWORD = "password12345"
Dim con
Dim conStr
Dim coomand
Dim rs
Dim i
'===============================
'SQL Serverへ接続
'===============================
'接続文字列の組み立て(Windows認証)
conStr = "Provider=" & PROVIDER & ";" & _
"Data Source='" & SERVER_NAME & "';" & _
"Initial Catalog='" & DB_NAME & "';" & _
"Integrated Security=SSPI;" & _
"DataTypeCompatibility=80;"
'接続文字列の組み立て(SQL Server認証)
'conStr = "Provider=" & PROVIDER & ";" & _
' "Data Source=" & SERVER_NAME & ";" & _
' "Initial Catalog=" & DB_NAME & ";" & _
' "User ID=" & USER_NAME & ";" & _
' "Password=" & PASSWORD & ";" & _
' "DataTypeCompatibility=80;"
'オープン
Set con = CreateObject("ADODB.Connection")
con.Open conStr
'実行するSQLを組み立て
coomand = coomand & "SELECT "
coomand = coomand & " productName, "
coomand = coomand & " productType, "
coomand = coomand & " price "
coomand = coomand & "FROM m_product "
'SQLを実行し結果を取得
Set rs = CreateObject("ADODB.Recordset")
rs.Open coomand, con
i=1
Do Until rs.EOF
'各レコードの1~3列目を取得
Msgbox i & "行目は" & _
Trim(rs("productName").Value) & "," & _
Trim(rs("productType").Value) & "," & _
Trim(rs("price").Value)
i = i + 1
rs.MoveNext
Loop
'===============================
'後片付け
'===============================
rs.Close
con.Close
Set rs = Nothing
Set con = Nothing
msgbox "完了!"