- ベストアンサー
エクセルVBA:データベースの連続検索について
失礼します。 あるデータベースの検索条件が文字列のA、B、C、D、E、があるとして、 ABCDEを引数にして、Aの次はB、その次はCというように順番通りに連続して検索し値を取得したい。 引数以外の検索プログラムは一度書きでループ処理し、 ABCDEと連続してデータベースより検索し値を取得しEで終了する方法はないでしょうか?
- みんなの回答 (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