• 締切済み

帳票フォームの自動計算

毎度おせわになります。 商品  購入金額  比率(%) ------------------------------- A      99,999  99.9 B C : : ------------------------------- TOTAL  99,999   100.0 上記のような帳票フォームがあり 各商品の購入金額を入力すると、各商品毎の購入金額合計に対する の割合(比率)が自動計算されるようにする という、フォームを作りたいのです。 フォームにはテーブルが連結されていて、上記の項目はテーブルから 貼り付けています。 購入金額をA,B,C…と入力していくと、それぞれの比率も変わってるの ですが、カレントレコードしか計算ができません。 どのようにしたら全レコードの比率を再計算して表示できるのでしょうか?

みんなの回答

  • matyap
  • ベストアンサー率56% (9/16)
回答No.1

自信なしです。 間違っているかもしれないので、他の方の回答を優先してください。 表形式フォーム上で、「比率」という項目のレコードソースプロパティをあるテーブルのレコードソースにしているならば難しいと思います。 現在フォームで開いて編集中であるテーブルの複数のレコードの「比率」という項目の更新をしなければいけないからです。 【案】 (1)テキストボックス「比率」のプロパティで以下のように設定する  コントロールソース  「=[購入金額]/Sum([購入金額])」  書式         「パーセント」  →テーブルの「比率」項目には設定されませんので注意してください (2)テキストボックス「購入金額」の更新後処理イベントに以下の記述をする SendKeys "{F9}"  →これで再計算が行われるので、テキストボックス「比率」も再計算されます。   最クエリーの場合は、フォーカスが先頭レコードに戻ってしまうので、この方法をとっています。 「比率」をテーブルに格納したい場合は、これだけではだめですけど・・・。 ご参考まで・・・

ruminow
質問者

お礼

matyapさん ありがとうございます。 項目のイベント:更新後処理でrefreshさせたあと、Dsumでレコード ソースとなっているテーブルの購入金額を計算し、比率を出力する という方法でなんとか解決できました。 いろいろ参考になりました。

関連するQ&A