仕事やってて気づいたんですが。

  a = 100000 * 128.4988

これですと a は 12849880 ですが、これに小数点切捨てのIntやFixをかますとなんでか -1 されます。

  a = Int(100000 * 128.4988)
  a = 12849879

これが発生するのは、
100000〜8220000 と、128.4988〜715.4988 の掛け算のみ(後者の値は少数点以下”.4988”固定)

最新のだと修正されているんだろうか・・・。

 なので小数点以下の切捨ては

 Int(a)
 Fix(a)

ではなく、

 Application.WorksheetFunction.RoundDown(a, 0)

にされた方が吉かと。

 どっちかと言うとオボエガキだな。

コメント