| 
    
     |  | 以下のプログラムで顧客テーブルから登録番号が一致するものに対してチェックを行い、 一致しないものはNGTBLに新規登録したいのですが、レコードの抽出が上手くいきません。
 コード1の時、T_情報の全情報が取得されます。
 コード2の時、正しく、NGTBLに登録。
 コード3の時、正しく、コード値3の情報のみ取得します。
 多分検索条件が悪いと思うのですがどうしていいか?です。宜しかった教えてください。
 <データ>
 T_顧客 FLDコード
 1
 2
 3
 T_情報 FLDコード FLDCHK1
 1    0
 1    0
 3    1
 3    1
 
 Dim db As Database
 Dim rstMain As Recordset
 Dim rstSub As Recordset
 Dim rstNG_D As Recordset
 Dim nChk As Integer
 
 Set db = CurrentDb()
 Set rstMain = db.OpenRecordset("T_顧客", dbOpenDynaset)
 Set rstSub = db.OpenRecordset("T_情報", dbOpenDynaset)
 Set rstNG_D = db.OpenRecordset("NG_D", dbOpenDynaset)
 
 rstMain.MoveFirst
 Do Until rstMain.EOF
 
 rstSub.MoveFirst
 rstSub.FindFirst "コード=" & rstMain!コード
 
 If rstSub.NoMatch = True Then
 rstNG_D.AddNew
 rstNG_D!コード = rstMain!コード
 rstNG_D.Update
 Else
 
 Do Until rstSub.EOF
 
 nChk = rstSub!CHK1
 
 // この処理は省略・・
 rstSub.MoveNext
 Loop
 End If
 rstMain.MoveNext
 Loop
 rstSub.Close: Set rstSub = Nothing
 rstMain.Close: Set rstMain = Nothing
 
 |  |