Access2000で四捨五入の計算を正しく行う方法は?

このQ&Aのポイント
  • Access2000での計算式で金額を小数第3位で四捨五入する方法が正しく機能しない場合があります。
  • 具体的には764.00 = 0.479 × 1595の計算で、正しく四捨五入されていません。
  • 他の値では正しく四捨五入されているため、やり方が問題か、他に正しい方法があるか検討する必要があります。
回答を見る
  • ベストアンサー

Access2000 小数第3位で四捨五入

質問させていただきます。 Access2000で以下の計算式を作りました。 金額 = Round(重量 × 単価,2) これは「金額」を小数第3位で四捨五入します。 ところが以下の数値の場合、正しく計算してくれません。 764.00 = 0.479 × 1595 本当は 764.005 だから 小数第3位で四捨五入すると 764.01 になると思うのですが・・・。 ちなみに以下の値では・・・ 754.44 = 0.473 × 1595 (754.435だから小数第3位で正しく四捨五入されています)。 やり方が悪いのでしょうか?それとも他に正しく計算できる方法があるのでしょうか?

  • pon_s
  • お礼率88% (101/114)

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

  • ベストアンサー
  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.1

= Int(CCur(0.479 * 1595 * 100 + 0.5)) / 100 で如何でしょうか。 このような場合、Round関数は、問題点があり、使えないと思います。 = Round(10.50) ----> 10 = Round(10.51) ----> 11 ですから・・・  Excelのワークシート関数とは違いまぁ~す。

pon_s
質問者

お礼

回答ありがとうございました。 望み通りの結果が出ました。 大変ありがとうございました。

その他の回答 (1)

  • Gin_F
  • ベストアンサー率63% (286/453)
回答No.2

> このような場合、Round関数は、問題点があり、使えないと思います。 ですね。 [OFFXP]VBAのRound関数について http://support.microsoft.com/default.aspx?scid=kb;ja;418216 こちらを確認してください。

参考URL:
http://support.microsoft.com/default.aspx?scid=kb;ja;418216
pon_s
質問者

お礼

回答ありがとうございました。

関連するQ&A

  • 小数の四捨五入

    お世話になります。 タイトルのとおりなのですが、ただ0.2332232…みたいな小数ではなく、 DBから取得した小数で、 2.46674e+007 のような感じで後ろに+~という文字がついてしまっている小数の四捨五入の仕方です。 これをroundで四捨五入すると、0になってしまいます。 // $float_numが2.46674e+007だとして // 小数第3位まで取得 $float_num = round($float_num,3); 出力結果:24667400 2.467という値を取得したいです。 どうかご教授いただけないでしょうか。

    • ベストアンサー
    • PHP
  • Accessで四捨五入するには?

    過去の質問を読んでもどうもうまくいかないので質問です。 数量と単価をかけて金額を計算したいんですが、数量は小数点第2位まで存在します。 数量と単位をかけてその値を四捨五入するにはどうしたらいいでしょうか? わかる方よろしくお願いします。

  • 小数点以下「3桁で」四捨五入?「3桁を」四捨五入?

    小数点第3位を四捨五入して、小数点第2位までの数値にすることを、 「小数点以下3桁で四捨五入する」というのは正しい日本語ですか? 「小数点以下3桁を四捨五入する」の方が正しいですか? それとも他にもっと適切な言い方はありますか? 国語に自信のある方、回答お願いします!

  • Access97で四捨五入したい

    数(納品テーブル)単価(品名テーブル)を元にしたクエリーでレポートを出しています。 レポート上で数*単価を「計」とし、「計」*1.05を「税込み」として横計算しています。   数  単価  計  税込 ----------------------------   2   198  396  416 上の場合通貨型にすると416になりますよね でも本当は415.8になっているようで フッターで合計すると微妙に違ってきます これを四捨五入した数値を合計できるようにしたいのですがAccess97には四捨五入関数がないと聞きました。 どのようにすれば合計できるのかできるだけ詳しく教えていただけないでしょうか。 もう何日もここで詰まってます。 よろしくお願いします

  • アクセス2000の四捨五入がうまくできません。

    アクセスのクエリーを使って、消費税計算を行いました。消費税は四捨五入ということで  消費税:ROUND([金額]*0.05) と計算式をいれて計算しましたが、思うような結果になりませんでした。原因がわかりません。教えてください。 

  • 小数点の四捨五入で分からないことがあります

    例えば、0.230978という値を小数点第4位を四捨五入したら、答えは0.231ですか?それとも0.2310が答えですか? また、0.8という値を小数点第1位を四捨五入したら、答えは1.0ですか?それとも1ですか? よろしくお願いします。

  • EXCELでの四捨五入の後の計算方法

    EXCELで小数点以下第何位までかを指定したり、ROUNDを使ったりして表記したのち、その第何位かまでで四捨五入された数値をそのまま次の計算に使いたいのですが、どうやら元の数値が使われているようです。四捨五入処理された数値が次の計算に使われる方法、どなたかご存知の方どうかご教示お願いします。

  • 割合(%)を出すとき、小数第何位まで計算すればいいか?また四捨五入について質問

    割合の計算で、86÷1337=0.0643・・・ ですが、小数点以下第二位まで四捨五入する場合、小数第四位まで求めますが、何故第四位まで求めるのでしょうか?第五位以上は求めなくて良いのでしょうか? また四捨五入についての質問なのですが、 40.45を小数点以下第一位まで四捨五入すると、40になりますが、このときに以下の疑問点があります。 四捨五入の過程で、小数第一位は4→5になりますが、この5を四捨五入すると、繰り上がると思うのですがなぜか、5が消えてしまいます。 それはなぜかと云えば、40の0は一の位で5は小数第一位だから、0のほうが位が大きい繰り上がらないと云う認識で大丈夫でしょうか?

  • ACCESS VBA 四捨五入??

    小数点以下の四捨五入みたいな計算をしたい 189.45 → 189.0 115.62 → 115.5 小数第一位が5以下なら0、 小数第一位が5以上なら5 にしたいのですが、どのようにすれば良いですか? 宜しくお願いします

  • 小数点4桁での四捨五入がうまくいきません

    エクセルで次のような計算をさせます。 A2 に1.8、B2に0.075、C2に0.075、 D2に= A2*B2*C2 、E2に=roundup(D2,4) D2の計算結果は 0.010125 です。小数点第5桁目の値を参照して第4桁目で四捨五入したいのですが、roundupでは0.0102、rounddownでは0.0101です。 表示させたいのは0.0101です。この場合、rounddownを使えば問題ないのですが、逆にrounddownだと小数点以下4桁目の四捨五入がうまくいかない場合もあります。 例えば A3に2.7 B3に0.08、C3に0.08 があり、E3にすべての値を掛けた結果を表示させると0.01728となります。 =roundup(E3,4)では0.0173となり、rounddownでは0.0172となります。この場合はroundup関数の結果である0.0173が求める数値です。 A列、B列,C列に任意の数字が入り、E列に4桁目で四捨五入した正確な値を求めたいのですが、なにか良い方法はないでしょうか。 VBAを使っても構いません。ちなみにこれは木材の材積計算に使用する目的です。 よろしくお願いします。

専門家に質問してみよう