質問: access2007 フォームでの計算結果をテーブルに反映させるには? ビスタでaccess2007を使っています あるテーブルにa~dまでのフィールドが設定されています。 フォームでフィールドa.bは手入力して c.dには計算式を設定して計算結果を表示させていますがテーブルに反映されません。 (フォームにはきちんど式通りの答えが表示されますがテーブルのフィールドc.dは空っぽです。) 例 a・・・10,000 b・・・0.1 c・・・1,000(計算式 a*b) d・・・9,000(計算式 a-c) フォーム上で行った計算結果をテーブルに入力反映させるにはどうすればよいでしょうか? テーブルやフォームの作り方が悪いのか? 計算式の設定が悪いのか? なぜテーブルに反映しないのか理由がわかりません。 そもそもフォーム上での計算はテーブルには反映しないのか? だとすれば反映させるにはどうすればよいのでしょうか? テーブルのフィールドに計算式を設定することは出来るのでしょうか? 出来るとすればその方法は? 疑問だらけでどうすれば求める結果が得られるのかさっぱり解りません。 当方access2007は初心者も同然ですのでわかりやすく解説して戴ければ幸いです。 よろしくご教授ください。
回答: >c.dともに各プロパティシートのデータタブ内のコントロールソース やはりコントロールソースを変更しちゃっているのですね。 この状態はフォームコントロールの名前はcやdですが、テーブル とは切り離されていますので、反映されないわけです。 コントロールソースはc、dの元に戻し、とりあえずイベントの フォーカス取得時にマクロを設定してみてください。 フォームデザインを開いたままで、マクロの作成を行い、 画像のようにアイテムに[forms]![本当のフォームの名称]![c] 式に[forms]![本当のフォームの名称]![a]*[forms]![本当のフォームの名称]![b] と入れて登録して動かしてみてください。