秘密基地、どこに作った?

いつもお世話になっております。

ACCESSのフォームやクエリーで計算を行う際の、切り捨て・切り上げ・四捨五入の仕方がうまくいきません。

どうしたらよいのでしょうか。
よろしくお願い致します。

A 回答 (5件)

#1です。


間違ったやり方を書いていたので訂正です。

[切り上げ]
0.99(ここの数字は必要とする精度によって変わる)
を足して切捨て。

切り捨てはInt関数を使いますが、
Int関数は常に小さい値が返るので、
マイナスを計算するときは注意が必要です。
(-8.5を切捨てすると-9が返る)

大変失礼しました。
下記のサイトを参考にしてみてください。

参考URL:http://www.accessclub.jp/bibouroku/015.html
    • good
    • 0

#2のmshr1962です。


>あくまでもクエリーやフォームで、簡単にできる方法はないかと思い質問させて頂きました。
紹介したのはユーザー定義関数の方法です。
上のほうの場合は
RoundToNearest([フィールド], 1, up)
で小数点以下第1位で切り上げ
1が10なら1の位、0.1なら小数点以下第2位になります。
[フィールド]の部分は、数式でも可
RoundToNearest([本体] * 1.05, 1, up)
なら消費税付加の計算になります。

関数だけで行う場合は
=Int([本体]*1.05)+Iif([本体] * 1.05 Mod 1 <> 0 , 1, 0)
のようになります。
上記はIntで切り捨て、後ろのIifで余りが0でない場合に1を付加(切り上げ処理)しています。
正式には金額が正の時と、負の時の処理を追加する必要があると思いますが...
    • good
    • 0

Int関数を使って下さい。

    • good
    • 1

Accessのバージョンは分からないので汎用的な方法


【目的のインクリメントで番号を丸める方法】
http://support.microsoft.com/default.aspx?scid=k …
【四捨五入の計算方法】
http://support.microsoft.com/default.aspx?scid=k …
    • good
    • 0
この回答へのお礼

ありがとうございます。

説明不足で申し訳ありませんが、あくまでもクエリーやフォームで、簡単にできる方法はないかと思い質問させて頂きました。

現在は四捨五入がされてしまいます。

お礼日時:2004/06/16 11:41

ACCESSは良く知らないのですが、


プログラミングをするときは、こういう方法を使います。
[切り上げ]
・1を足して切り捨て
[四捨五入]
・0.5を足して切り捨て
[切り捨て]
・そのまま切り捨て

こうすれば、切り捨ての方法だけ知っていればできます。
    • good
    • 0
この回答へのお礼

ありがとうございます。

>切り捨ての方法だけ知っていればできます。

残念ながら、切り捨ての方法も分からないのです。
現在、クエリーで除算を行うと、四捨五入されてしまうのですが、切り上げをしたいと思います。

お礼日時:2004/06/16 11:40

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

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報