2.645+0.001=2.646
とはならずに
2.645+0.001=2.6459999999999999998
となったりする。
目次
有効桁数で丸める対策
Round関数で四捨五入して切りのいい数値にする。
Round(数値, 丸めたい桁数)
Round(2.6459999999999999998, 3)=2.646
'0.001ずつ増やした値を書き込む処理 Dim num As Single num = Range("A1") For i = 1 To 10 Cells(i, 2) = Round(num, 3) 'ここで小数第三位に丸める num = num + 0.001 'ここで演算誤差が発生する場合あり Next i
その他の方法
以下のサイトを参考に
スポンサーリンク