• ベストアンサー

ACCESSで小数点以下の表示を制限する

こんにちは。 ACCESS2003を使っています。 フォーム上で、テーブルの特定の項目(単精度浮動小数点型)を、小数点以下2桁まで表示させています。 この項目は事前に小数点以下3桁目を四捨五入しています。 そしてテーブルの定義で少数点以下2桁まで表示させています。 確かにそのとおり表示されるのですが、そのテキストボックスにカーソルを位置付けると小数点以下10桁以上の小さな数字が表示されてしまいます。 1.これは誤差として避ける事ができないのでしょうか? 2. カーソルを位置づけた時、指定桁数以下を表示させないようにはできないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
noname#140971
noname#140971
回答No.1

Q1、これは誤差として避ける事ができないのでしょうか? A1、避けることが可能。 Q2、指定桁数以下が記録されるにようにはできないでしょうか? A2、小数点以下3桁目で四捨五入を間違いなく行うことです。 多分、 (1)通貨型で演算していない丸め誤差を発生させている。 (2)あるいは型の不一致による誤差を発生させている。 (3)そもそも四捨五入処理が間違っているか、していない。 でしょう。

kunisada
質問者

お礼

回答ありがとうございました。 おっしゃるようにテーブルのデータ型を通貨型に変えたら誤差がなくなり質問の状況は発生しなくなりました。 おかげさまで助かりました。

その他の回答 (1)

  • CHRONOS_0
  • ベストアンサー率54% (457/838)
回答No.2

テーブルですか? テーブルにどうやって四捨五入したものを入れているの? 値の代入? >そのテキストボックスにカーソルを位置付けると >小数点以下10桁以上の小さな数字が表示されてしまいます。 書式で小数点以下の表示を制限していても入力時には正味の値が表示されます カーソルが入ったとき10桁以上表示されているということは 四捨五入が行われていないということです

kunisada
質問者

お礼

回答ありがとうございました。 四捨五入の処理は正確でしたが単精度浮動小数点型は誤差が生じるためにこのような動作になっていました。 通貨型に変えたら誤差がでなくなりました。

関連するQ&A