2018年4月12日木曜日

【Debug】VBA内でSQLを発行する

T_名前マスター([UserId],[名前],[表示順序])と、ComboBoxがあるとする。

コンボボックスに指定されたUserIdは出力しない例。

  1. Private Sub Exp_SQL_Com()
  2. Dim Str_SQL As String
  3. Dim rs As New ADODB.Recordset
  4.  
  5. 'SQL文を文字列で作ってやる。
  6. Str_SQL = "SELECT UserId, 名前 FROM T_名前マスター WHERE UserId <> " & _
  7. Me!ComboBox.Value & " ORDER BY 表示順序;"
  8.  
  9. 'ちゃんとSQL構文になっているか確認。よく変数名がそのまま出てたり( ゚-゚)~゚
  10. Debug.Print Str_SQL
  11. rs.Open Str_SQL, CurrentProject.Connection
  12. Do Until rs.EOF
  13. Debug.Print rs![名前]
  14. rs.MoveNext
  15. Loop
  16. rs.Close
  17. End Sub

こんな感じに、イミディエイトウィンドウにSQL文や結果を排出。
後から動的に値集合ソースなどを指定するときの確認に便利。かも?

0 件のコメント:

コメントを投稿