出来るのだASP Q&A掲示板(過去LOG)  訪問数 52046 昨日 889 今日 776
    【PR】 パソコン入門からIT専門書まで幅広く取り揃えています。セブン-イレブン受取り手数料無料のセブンアンドワイ。
Topに戻る 掲示板に戻る 検索 削除 管理者

[1833] Re:VBScript の Round関数にはバグがあります
投稿者:arikさん 2002/03/08 11:45:02
VB系のRound関数四捨五入する為の関数ではありません。
小数点以下を丸めるための関数です。

以下MSDNから抜粋

端数の処理方法は、小数点以下 1 桁目の数値によって決まります。小数点以下 1 桁目が 5 未満の場合は切り捨てられ、6 以上の場合は切り上げられます。5 の場合は、整数部分の 1 桁目の値が偶数であれば切り捨てられ、奇数であれば切り上げられます。小数点以下 1 桁目が 5 のときは、常に偶数の整数が結果として返されます。

Round 関数は、指定した小数桁数を含む数値を返すには便利ですが、処理される端数が 5 である場合の結果を常に予測できるわけではありません。端数の処理方法は、内部処理における数値のバイナリ表示によって異なります。予測可能な値に従って小数を処理するには、独自の関数を記述する必要があります。

抜粋終わり

よって(2)は異常ではありませんし、Round関数のバグではありません。

(3)のRound関数はVB系の関数ではなくExcelのワークシート関数です。
ExcelのHELPのワークシート関数のRound関数には「四捨五入」と明記されてます。

ExcelVBAのHELPと比べると理解できるかと思います。

VBScript の Round関数にはバグがあります   北岳さん [2002/03/08 7:00:32] [1831]
  Re:VBScript の Round関数にはバグがあります   北岳さん [2002/03/08 9:02:12] [1832]
  Re:VBScript の Round関数にはバグがあります   arikさん [2002/03/08 11:45:02] [1833]
    Re:VBScript の Round関数にはバグがあります   arikさん [2002/03/08 16:15:53] [1836]
  Re:VBScript の Round関数にはバグがあります   たまコさん [2002/03/08 12:25:47] [1834]
  VBScript の Round関数は使い方注意   北岳さん [2002/03/08 15:57:50] [1835]


TreeBBS For ASP V.0.1.3
Program By YasNet