3

ControlSource=[Day1] を使用して、3 つの入力フィールド ([Day1]、[Day2]、および [Day3]) と、これら 3 つのフィールドの合計を示す 1 つのフィールド ([Total]) を持つ MS Access のフォームがあります。 ]+[2 日目]+[3 日目]。

ここで、[Total] の変更に基づいて別のフィールドを更新したいと考えています。つまり、[合計] フィールドの「変更時」です。

Change イベントと AfterUpdate イベントを使用しようとしましたが、ControlSource を介して変更が行われたときにどちらもトリガーされません。

もちろん、個別の各フィールドの AfterUpdate コードを実行してフィールドを更新することもできますが、これは洗練されていないように感じます。

この目的で使用できる「制御ソースによる変更時」をトリガーするイベントはありますか?

4

1 に答える 1

0

私の知る限り、計算されたコントロール (合計コントロールなど) が計算された値を変更したときにイベントを発生させる方法はありません。私は、過去に私のために働いた2つのアプローチがあることを発見しました:

#1:あなたが言ったようにして、「その他」フィールドの更新をDay1、Day2、およびDay3コントロールのAfterUpdateイベントに結び付けます。

#2: 「その他」フィールドの更新をフォーム自体の AfterUpdate メソッドに結び付けます。レコードの変更がコミットされると (たとえば、再クエリやレコードの変更後)、更新を行うための永続データが得られます。

于 2013-02-14T09:24:10.653 に答える