如何实现这个功能,象四舍五入类似,只不过只进不舍.
比如:
23.2241 要转为23.225,
23.2247 也要转为23.225
不知用哪个函数可以实现.谢谢先.

解决方案 »

  1.   

    Private Function Test(DblIn As Double, P As Integer) As Double
        Test = (Int(DblIn * 10 ^ P) + 1) / (10 ^ P)
    End Function第一个参数为输入,第二个参数为你准备保留的小数位数
      

  2.   

    Private Function Test(DblIn As Double, P As Integer) As Double
    If DblIn * 10 ^ P = Int(DblIn * 10 ^ P) + 0# Then
       Test = Int(DblIn * 10 ^ P) / (10 ^ P)
    Else
      Test = (Int(DblIn * 10 ^ P) + 1) / (10 ^ P)
    End If
    End Function
      

  3.   

    fix(23.2241 * 1000 + 0.9)/1000
      

  4.   

    VB中函数的怪问题,int(24.256 * 1000) 与 int(24256)的结果为何不同呀?道理上讲不通呀?
    ?int(24.256 * 1000) ,结果为24255,
    ?int(24256),结果为24356,
    我不明白这是为什么?
    先谢了。
      

  5.   

    不会吧,立即窗口:?Int(24.256 * 1000) = Int(24256)
    True
      

  6.   

    ?Int(24.256 * 1000) = Int(24256)
    True