アプリ版:「スタンプのみでお礼する」機能のリリースについて

以下の処理を行おうとしています。
WEBを検索しましたが、利用出来る内容が有りませんでした。
詳しい方のご支援をお願いします。

ACCEESS2016を使用。
テーブル

T_契約
 契約番号
 支払先コード
 月額支払金額
 支払開始年月日
 支払終了年月日
 前回支払年月

T_支払明細
 契約番号
 支払年月
 支払年月日
 支払金額
 支払済フラグ

クエリ

Q_支払明細
 契約番号
 支払先コード
 支払年月
 支払年月日
 支払金額
 支払済フラグ
 前回支払年月

Q_支払明細を分割フォームで表示し、
当月分をフィルターで絞り込んで確認。
確認終了後、更新ボタンを押して、
絞り込まれたレコードのみ
支払済フラグを0から1に更新し、
前回支払年月を支払年月で上書き更新したい。

宜しくお願い致します。

質問者からの補足コメント

  • ありがとうございます。
    支払先別に処理したり、支払先一括で処理したり、
    支払年月の値も含めて月により、絞り込み条件が
    変わるので、悩んでおります。
    また、説明がひとつ抜けておりました。
    継続反復取引(毎月払いの保守料等)の支払管理業務となります。

    No.1の回答に寄せられた補足コメントです。 補足日時:2018/11/08 15:14

A 回答 (2件)

現在データシートに表示されているレコードを更新するということなら


DAO の RecordsetClone で 書き込むのが紛れが少ないです。
処理は遅いですが。

一例です。

Private Sub 更新_Click()
 Dim rst As DAO.Recordset
 Set rst = Me.RecordsetClone

 With rst
  .MoveFirst
  Do Until .EOF
   .Edit
   !支払済フラグ = 1
   !前回支払年月 = !支払年月
   .Update
   .MoveNext
  Loop
 End With
 rst.Close
 Set rst = Nothing
 Me.Requery
End Sub
    • good
    • 0
この回答へのお礼

ありがとうございます。
出来ました。

>処理は遅いですが。
確かに、画面がチラチラして気になりますが、
件数がそんなに大量では無いので、問題無いかと思います。
処理中は画面更新をしないとか出来るとベターかも知れません。

ベストアンサーにさせて頂きます。
これからも宜しくお願いします。

お礼日時:2018/11/10 21:09

>絞り込まれたレコードのみ


これは、はっきりしてるの?
してるなら、更新用クエリかSQLを裏で流せばいいんだけど。
どっちにしても、コードで記述するしかないかもね。
この回答への補足あり
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A