人生で一番お金がなかったとき

アクセス2003を使っているのですが、フォーム上で計算をして出た結果が、テーブル上に入力されていないのですが、何故でしょうか?
フォーム上で、=IIf(IsNull([売却価格])=True,"",[売却価格]-[購入価格]-[手数料])と、計算式を立てて、利益を出しているのですが、フォーム上では、問題無く利益が出ているのですが、テーブル上に、計算結果の利益が入力されていないのですが、何故でしょうか?
フォームとは別に、テーブル上でも、計算式を設定しないといけないのでしょうか?その場合は、どのような計算式になりますでしょうか?

A 回答 (1件)

基本的に計算で求められるものはテーブルには含めません。


したがって、今のままで宜しいかと思います。
(そのフィールドは削除)

どうしても入れたい場合には・・・
テーブルに「利益」フィールドが有るとして
フォームに「利益」というテキストボックスが有り
コントロールソースに
=IIf(IsNull([売却価格])=True,"",[売却価格]-[購入価格]-[手数料])
とでもしてあるのでは?

この場合テーブルの「利益」フィールドとフォームの「利益」テキストボックスは
「縁もゆかりも無い」(コントロールソースがテーブルの「利益」では無い)ので
テーブルのフィールドにデータが収まることはありません。

VBAになりますが、フォームに「利益」テキストボックスを置き
コントロールソースに、テーブルの「利益」とします。
[売却価格]・[購入価格]・[手数料] それぞれの更新後処理に
Me!利益 =IIf(IsNull([売却価格])=True,"",[売却価格]-[購入価格]-[手数料])
とでもすればお望みの結果になるかと思いますが、
基本は冒頭で述べたとおりです。
    • good
    • 0

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