把小数向上约去,如a=1.1,变成2,b=4.6变成5

解决方案 »

  1.   

    不知道是否有这样的函数,
    你可以按照这个思路来写一个函数也可以实现:
    val 为一个小数
    inttemp 为一个整形变量
    inttemp=int(val)
    if inttemp*10 <val*10 then
       inttemp=inttemp+1
    endif
    inttemp 就是所求的值
      

  2.   

    Function allin(i As Single)
      Dim a As Single
      a = -i
      allin = -Int(a)
    End Function
    Private Sub Command1_Click()
     Dim a As Single
     a = Trim(Text1.Text)
      Print Round(allin(a))
    End Sub
    原理把数先变成负数,再取整,然后再变回来就成了
      

  3.   

    再关注
    danielinbiti(金)的方法是比较好的,我的思路中存在着缺陷当小数为11。001 或者是小数点后有两位或更多位的时候并且小数点后第一位为零的时候就不行了,除非val*1000或者乘以更大的参数。还是danielinbiti(金)的方法比较好。
      

  4.   

    Function IntUp(i as single)
       if int(i)=i then
          IntUP=i
       else
          IntUP=int(i)+1
       endif
    end function
    首先判别是否为整数,如果是即为该值;否则取整后加1
      

  5.   

    看来搂主并不想四舍五入就想取整数,并且想在原先的整数位加一
    因为搂主的其中一个例子是:如a=1.1,变成2
    看看这个怎么样
    Public Function Int2(Data As String) As Long
       Dim X() As String, XLen As Long
       X = Split(Data, ".")
       On Error GoTo OneLen
       XLen = UBound(X)
       If Int(X(XLen)) <> 0 Then
          Int2 = Int(X(LBound(X))) + 1
       Else
          Int2 = Int(X(LBound(X)))
       End If
       Exit Function
    OneLen:
       Int2 = Int(X(LBound(X)))
    End Function
      

  6.   

    我记得有这个函数,查一下MSDN吧,记得好像有个和Int()相关的函数中有相关的说明。
    机子上没装MSDN,自己查一下看。
      

  7.   

    如果都是正数的话:
    -(int(-a))
    就可以了
      

  8.   

    int(x+1) 不就行了嘛!!!!
      

  9.   

    int(2+1)不就变成3了吗?所以不对
    用我的方案:
    -(int(-2))还是等于2
    -(int(-2.1))却等于3
      

  10.   

    Int 函数,Fix 函数示例
    本示例说明 Int 及 Fix 函数在返回某数值的整数部分时有何不同。当参数为负数时,Int 函数返回小于或等于该参数之最大整数,而 Fix 函数则返回大于或等于该参数之最小整数。Dim MyNumber
    MyNumber = Int(99.8)   ' 返回 99。
    MyNumber = Fix(99.2)   ' 返回 99。MyNumber = Int(-99.8)   ' 返回 -100。
    MyNumber = Fix(-99.8)   ' 返回 -99。MyNumber = Int(-99.2)   ' 返回 -100。
    MyNumber = Fix(-99.2)   ' 返回 -99。
    引自MSDN
      

  11.   

    把数先变成负数,再取整...
    但如果这数是负数呢?
    我想还是用简单点的方法好
    if a1>int(a1) then a1=a1+1
    if a1<int(a1) then a1=a1-1