hiko-blog

VBA業務改善

MENU

パスクエリ サンプル

Sub ExecutePassThroughQuery()

 ’Microsoft ActiveX Data Objects x.x Library


    Dim conn As ADODB.Connection
    Dim cmd As ADODB.Command
    Dim rs As ADODB.Recordset
    Dim connectionString As String
    Dim sqlQuery As String
    
    ' SQL Serverへの接続情報
    connectionString = "Provider=SQLOLEDB;Data Source=your_server_name;Initial Catalog=your_database_name;User ID=your_username;Password=your_password;"
    
    ' パススルークエリ
    sqlQuery = "SELECT * FROM your_table_name WHERE some_condition"
    ' 接続を確立
    Set conn = New ADODB.Connection
    conn.Open connectionString
    
    ' コマンドを作成し、クエリを設定
    Set cmd = New ADODB.Command
    cmd.ActiveConnection = conn
    cmd.CommandText = sqlQuery
    
    ' レコードセットを取得
    Set rs = cmd.Execute
    
    ' 結果の表示
    Do Until rs.EOF
        For i = 0 To rs.Fields.Count - 1
            Debug.Print rs.Fields(i).Name & ": " & rs.Fields(i).Value
        Next i
        rs.MoveNext
    Loop
    
    ' 接続を閉じる
    rs.Close
    conn.Close
End Sub