なんと、Round関数というのが出てきたのでちょっとビックリ
AccessではInt関数+0.5だとずっと思っていたのでいつから出来るようになったんだろうと
勉強不足を反省しつつ、もう少しググってみた。
なんと、1.5は2になるが2.5も2になるという。使えないじゃないか。
危うく、1円合わない状態に陥るところだった。
というわけで
Int(数値+0.5)
http://support.microsoft.com/kb/881382/ja(マイクロソフトのサポートにも書いてあった)
普通はこれでいいようなんだけど、マイナスの数値の時にはこれが使えない
Int(1.5+0.5)=2
Int(-1.5+0.5)=-1
これでは、ダメなので数値がマイナスの時にはマイナスしてみる
Int(-1.5-0.5)=-2(あってる)
Int(-1.6-0.5)=-3(あわない)
実はInt関数はExcelでいうRoundDown関数の切り捨てでは無い。
説明が上手ではないので結論から言うと※Fix関数を使う。※
Fix(1.6+0.5)=2
Fix(-1.6-0.5)=-2
やはりプラスの時は+0.5、マイナスの時は-0.5を加える必要がある。
私のプログラム中は上のFix関数を使っているのだが
実はFormat関数でも四捨五入が出来る。
Format(1.6,"0")=2
Format(-1.6,"0")=-2
0 件のコメント :
コメントを投稿