四舍五入

来源:互联网 发布:淘宝首页怎么设计 编辑:程序博客网 时间:2024/03/28 17:48
Public Function RoundF(Number, Optional NumOfDigits As Long) As Double
    If Not IsNumeric(Number) Then Exit Function
    Dim iPos As Long
    iPos = InStr(Number, ".")
    Dim dbDesimalPart As Long
    Dim dbRoundPart As Long
    If iPos > 0 Then
        dbDesimalPart = Mid(Number, iPos + 1)
    End If
    If NumOfDigits < Len(CStr(dbDesimalPart)) Then
        dbRoundPart = Mid(dbDesimalPart, NumOfDigits + 1, 1)
    End If
    If dbRoundPart > 4 Then
        dbDesimalPart = Left(dbDesimalPart, NumOfDigits) + 1
    Else
        dbDesimalPart = Left(dbDesimalPart, NumOfDigits)
    End If
    RoundF = Val(Int(Number) & "." & dbDesimalPart)
End Function
原创粉丝点击