Access のADOのrecordset
Access VBA でのrecordset はDAOとADOがあります。
DAOの場合recordsetからrecordsetを作成できました。
つまり、日本からある県を選び出し、その中から10代の人を選び出せました。
ところが、ADOの場合それができません。ある県の10代の人を選び出そうとしても、
結果的に全日本の10代の人となってしまいます。
例として
RD1.Filter = "購入日># " & DateAdd("yyyy", -1, Date) & "#"
Set RD2 = RD1.OpenRecordset
この「RD2」という新しいrecordsetができます。
RD2は購入日が今日から1年前の1つのファイルとしてsetされます。
この中から山田さんの売り上げを集計することができます。
ところが、ADOの場合下記のように書いて、
str = RS!ブランド
RS.Filter = ("ブランド = " & "'" & str & "'")
RS.MoveFirst
str = RS!名前
RS.Filter = ("名前 = " & "'" & str & "'")
上はある雑貨店のDBですが、あるブランドを抽出します。次にその中から、ある顧客の売り上げを集計する場合、結局全ブランドの”田中さん”になってしまいます。
要は、最初にブランドで抽出した意味がないのです、
ADOでDAOのようにrecordsetからrecordsetを作る方法はないのでしょうか?
ADOの書き換えるのはMSのQSLserverがDAOの対応してないからです。