☘️
AccessのRound関数は銀行型丸め
問題はどこにあるか
- Access2000以降のRound関数は、通常の四捨五入ではなく銀行型丸め関数である。
- それ以前のAccessにはRound関数はない。
- ExcelのRound関数は、通常の四捨五入である。
Access VBAで書く、通常の四捨五入関数
Function myRound(x As Double, k As Long) As Double
Dim work As Double
If x >= 0 Then
work = x * 10 ^ k + 0.5
Else
work = x * 10 ^ k - 0.5
End If
myRound = Int(work) / 10 ^ k
End Function
Discussion