< | >

ACCESS:フラグを消し去るVBA #2 Do Loop
  • (2010-02-17 06:04:04)
1)フラグを消し去る(DAO+Do Loop方式)

昔書いたコードを引っ張ると「Do Until〜Loop」を使用していた。

Do Loopでサンプルコードを書く。テーブルは2種類、それぞれに消したいフィールドが2個あると想定。DatabaseオブジェクトをSetしてレコードセットのインスタンスを作成。最初のレコードから最後のレコードまで順々にフラグにFalseを入れていく操作。

Private Sub フラグクリア_Click()

Dim DB As Database

Dim RS1 As Recordset

Dim RS2 As Recordset

Set DB = CurrentDb

'テーブル1のフラグを消し去る

'Do Loopでレコードを最後までなめ回す

Set RS1 = DB.OpenRecordset("テーブル1", dbOpenTable)

Do Until RS1.EOF

RS1.Edit

RS1![フィールド1] = "False"

RS1![フィールド2] = "False"

RS1.Update

RS1.MoveNext

Loop

RS1.Close

Set RS1 = Nothing

'テーブル2のフラグを消し去る

'Do Loopでレコードを最後までなめ回す

Set RS2 = DB.OpenRecordset("テーブル2", dbOpenTable)

Do Until RS2.EOF

RS2.Edit

RS2![フィールド3] = "False"

RS2![フィールド4] = "False"

RS2.Update

RS2.MoveNext

Loop

RS2.Close

Set RS2 = Nothing

Set DB = Nothing

End Sub

この記事は#2

ACCESS:フラグを消し去るVBA #5 スピード対決

ACCESS:フラグを消し去るVBA #4 DoCmd.RunSQL

ACCESS:フラグを消し去るVBA #3 Execute

ACCESS:フラグを消し去るVBA #2 Do Loop

ACCESS:フラグを消し去るVBA #1 消し忘れ






<< ACCESS:フラグを消し去るVBA #3 Execute< | >ACCESS:フラグを消し去るVBA #1 消し忘れ >>
search
layout
admin

[▲page top]