要求支持负数!例如:21.333 保留两位小数四舍五入 21.33567.238 保留两位小数四舍五入  567.24-63.259 保留一位小数四舍五入   -63.3
请问这个函数如何写??????
另外:
 什么函数是去除小数位并四舍五入   , 什么函数是去除小数位但不四舍五入

解决方案 »

  1.   

    round(21.333,2)=21.33
    round(567.238)=567.24
    round(-63.259,1)=-63.3int,fix函数可以去小数位但不四舍五入
      

  2.   

    function myround(x as float,y as integer) as float
        myround=int((x*10^y)+0.5)
    end function'x为原数
    'y为保留位数
      

  3.   

    如果是四舍五入的话,就不能用Round函数,而用Int(X + 0.5)
    因为Round函数是四舍六入五逢双,

    小数为4舍,为6进,5前面为奇数进位,为偶数舍弃
    如:
    Round(13.5)=14
    Round(14.5)=14应该改为
    Int(13.5+0.5) = 14
    Int(14.5+0.5) = 15
      

  4.   

    Text1 = myround(21.37, 2) 
    Function myround(x As Double, y As Integer) As Double
        myround = Int((x * 10 ^ y) + 0.5)
    End Function上面的代码运行后就变成 2137 !!