• 締切
  • すぐに回答を!

帳票フォームの自動計算

  • 質問No.321300
  • 閲覧数190
  • ありがとう数2
  • 回答数1

お礼率 56% (31/55)

毎度おせわになります。

商品  購入金額  比率(%)
-------------------------------
A     99,999  99.9
B
C
:
:
-------------------------------
TOTAL  99,999   100.0

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

回答 (全1件)

  • 回答No.1

ベストアンサー率 56% (9/16)

自信なしです。
間違っているかもしれないので、他の方の回答を優先してください。

表形式フォーム上で、「比率」という項目のレコードソースプロパティをあるテーブルのレコードソースにしているならば難しいと思います。
現在フォームで開いて編集中であるテーブルの複数のレコードの「比率」という項目の更新をしなければいけないからです。

【案】
(1)テキストボックス「比率」のプロパティで以下のように設定する
 コントロールソース  「=[購入金額]/Sum([購入金額])」
 書式         「パーセント」
 →テーブルの「比率」項目には設定されませんので注意してください
(2)テキストボックス「購入金額」の更新後処理イベントに以下の記述をする
SendKeys "{F9}"
 →これで再計算が行われるので、テキストボックス「比率」も再計算されます。
  最クエリーの場合は、フォーカスが先頭レコードに戻ってしまうので、この方法をとっています。

「比率」をテーブルに格納したい場合は、これだけではだめですけど・・・。

ご参考まで・・・
お礼コメント
ruminow

お礼率 56% (31/55)

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

その他の関連するQ&Aをキーワードで探す

ページ先頭へ