• ベストアンサー

エクセルVBA:データベースの連続検索について

失礼します。 あるデータベースの検索条件が文字列のA、B、C、D、E、があるとして、 ABCDEを引数にして、Aの次はB、その次はCというように順番通りに連続して検索し値を取得したい。 引数以外の検索プログラムは一度書きでループ処理し、 ABCDEと連続してデータベースより検索し値を取得しEで終了する方法はないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • rivoisu
  • ベストアンサー率36% (97/264)
回答No.1

データベースはADOでアクセスするということでよろしいのでしょうか。 接続が確立していてその名称が”DB接続”だとすると 以下のようなコードになります。 Sub dbdbdb() Dim LastLine As Long Dim ss As Variant Dim SQLstr As String Dim RS As Recordset Set RS = New ADODB.Recordset ss = Split("A,B,C,D,E", ",") For i = 0 To UBound(s)   SQLstr = "Select * from testtbl where ID='" & ss(i) & "';"   RS.Open DBsqlstr, DB接続, , adLockOptimistic   LastLine = cells(Rows.Count, 1).End(xlUp).Row + 1   If RS.EOF=False Then       RS.CopyFromRecordset cells(LastLine, 1)   End If   Close RS Next Set RS = Nothing End Sub

関連するQ&A