0
私はバーがfooの子であるネストされたデータシートを持っています。 FOOのすべてのレコードをループしMS Accessのループスルーサブレコード
は、私は単に
Dim rst As DAO.Recordset
Set rst = Forms!foo.Form.RecordsetClone
Do Until rst.EOF
'Do Something
rst.MoveNext
Loop
を行うだろう。しかし、今、私はその子フォームバーのすべてのレコードをループにしたいです。試しました
Dim rst As DAO.Recordset
Dim subrst As DAO.Recordset
Set rst = Forms!foo.Form.RecordsetClone
Do Until rst.EOF
Set subrst = Forms!foo.Form!bar.Form.RecordsetClone
Do Until subrst.EOF
'Do Something
subrst.MoveNext
Loop
rst.MoveNext
Loop
悲しいことに、これは最初のレコードのサブレコードをループするだけです。他のすべてのサブレコードには決して到達しません。他のすべてのサブレコードのレコードセットにアクセスするにはどうすればよいですか?
あなたの最初の提案を取るならば、 'rst.MoveNext'の後に' Me.Bookmark = rst.Bookmark'をする必要がありますか?代わりに表示されたレコードセットを複製せずに移動するのは悪いスタイルですか? – Nikno
UIを操作するのは面倒なスタイルですが、レコードを数えるだけでなく、静かで速く、同様の音量と複雑さのコードで簡単に行うことができます。 – Gustav