Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


2143 / 2272 ツリー ←次へ | 前へ→

【3757】Filter で抽出時のレコード更新 ぷー 04/10/22(金) 14:12 質問[未読]
【3759】Re:Filter で抽出時のレコード更新 Gin_II 04/10/22(金) 15:40 回答[未読]
【3767】Re:Filter で抽出時のレコード更新 ぷー 04/10/22(金) 20:28 質問[未読]
【3769】Re:Filter で抽出時のレコード更新 ぷー 04/10/22(金) 22:25 お礼[未読]

【3757】Filter で抽出時のレコード更新
質問  ぷー  - 04/10/22(金) 14:12 -

引用なし
パスワード
   いつもお世話になっております。

下記のようにFilterでレコードを抽出し、そのレコードに更新(UPDATE)したい
のですが、UPDATE するとレコードの読み込みが1件おきになってしまいます。
(UPDATEを外して実行してみると、該当データはすべて読み込まれました)
Filter使用時にUPDATEしてはいけないのでしょうか?
よろしくお願いいたします。(*ACCESS2002使用)

  CRITERIAX1 = "確定FLG = 0"
  入荷TBL.Filter = CRITERIAX1
   
  Do Until 入荷TBL.EOF

    ジャーナル編集

    入荷TBL![確定FLG] = 1
    入荷TBL![確定日] = Date
    入荷TBL.Update
   
    入荷TBL.MoveNext
  Loop

【3759】Re:Filter で抽出時のレコード更新
回答  Gin_II  - 04/10/22(金) 15:40 -

引用なし
パスワード
   >  CRITERIAX1 = "確定FLG = 0"
>  入荷TBL.Filter = CRITERIAX1

Filter ではなく、SQL文を使っては?
UPDATE で、WHERE 句を使って絞り込めばいいかと。

【3767】Re:Filter で抽出時のレコード更新
質問  ぷー  - 04/10/22(金) 20:28 -

引用なし
パスワード
   >Filter ではなく、SQL文を使っては?
>UPDATE で、WHERE 句を使って絞り込めばいいかと。

ありがとうございます。
SQLを初めてつかいました。抽出は上手くできましたが、更新がどうしたら
よいか解りません。
処理のながれとしては、抽出したレコードを1件ずつ読み込み別のテーブルに
追加処理をし、その後1件ずつレコードの更新を行いたいのです。
以下のようにしたら、抽出のみはうまくできました。
更新はどこでどのようにしたらよいでしょうか?
よろしくお願いいたします。

  Set 入荷DB = CurrentProject.Connection
  MYSQL = "SELECT JN入荷.確定済FLG,JN入荷.雑誌コード " _
     & "FROM JN入荷 " _
     & "WHERE ((JN入荷.確定済FLG)=0);"
     
  入荷TBL.Open MYSQL, 入荷DB, adOpenKeyset, adLockPessimistic
  Do Until 入荷TBL.EOF
    MsgBox 入荷TBL![雑誌コード] <=== 本来ここで別テーブルに追加処理。
    入荷TBL.MoveNext         この後に1件ずつ(追加処理が終
  Loop                 了したもののみ)更新したい。 
  
  入荷TBL.Close: Set 入荷TBL = Nothing
  入荷DB.Close: Set 入荷DB = Nothing

【3769】Re:Filter で抽出時のレコード更新
お礼  ぷー  - 04/10/22(金) 22:25 -

引用なし
パスワード
   すみません。
自己レスしました。ありがとうございました。
またの質問の際にはよろしくお願いいたします。

2143 / 2272 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
1078299
(SS)C-BOARD v3.8 is Free