excel中如何实现x的四舍六入五成双到小数点n位?

可以在excel中建立宏,然后输入以下程序:

Function Roundx(x, n)

y = x * 10 ^ n - Int(x * 10 ^ n)

z = Int(x * 10 ^ n)

If y >= 0.6 Then

p = (Int(x * 10 ^ n) + 1) / 10 ^ n

ElseIf y < 0.5 Then

p = Int(x * 10 ^ n) / 10 ^ n

ElseIf z / 2 = z \ 2 Then

p = Int(x * 10 ^ n) / 10 ^ n

ElseIf z / 2 <> z \ 2 Then

p = (Int(x * 10 ^ n) + 1) / 10 ^ n

End If

Roundx = p

End Function

当n为正,则为小数点之后,n为负,则小数点之前。

AI助手