VBA中的JavaScript Math.Floor()
等价物是什么?此函数应删除所有小数位并仅返回整数。
答案 0 :(得分:31)
我记得使用Int()函数。前
int(2.99) = 2 ; int(2.1)=2
等等。
答案 1 :(得分:4)
这是Round()
Sub Sample()
Dim dval As Double
dval = 1.12345
Debug.Print Round(dval, 0)
End Sub
上面的 0
指定了您想要的小数位数。
修改强>
Albi Patozi是对的。 equivalent
的{{1}}为Math.Floor()
。我的印象是你只想返回一个没有小数的数字。但后来我查了http://www.w3schools.com/jsref/jsref_floor.asp
floor()方法将数字DOWNWARDS舍入到最接近的整数,并返回结果。
int()
<强> RESULT 强>
ROUND()~~ INT()
1 ~~ 0
0 ~~ 0
5 ~~ 5
5 ~~ 5
-5 ~~ -6
-6 ~~ -6
答案 2 :(得分:2)
您也可以从VBA调用其中一个Excel工作表函数:
Application.WorksheetFunction.Floor_Math
Application.WorksheetFunction.Floor
答案 3 :(得分:-1)
VBA提供Int()
和Fix()
。
诠释,修复函数
返回数字的整数部分。
语法
整数(数字)
修正(数字)
所需的数字参数为Double或任何有效数字 表达。如果数字包含Null,则返回Null。
备注
Int和Fix都删除数字的小数部分,然后返回 得到的整数值。
Int和Fix之间的区别在于,如果number为负,则Int 返回小于或等于number的第一个负整数, 而Fix返回的第一个负整数大于或等于 编号。例如,Int将-8.4转换为-9,而Fix将-8.4转换为 到-8。
修复(数字)等效于:
Sgn(数字)* Int(Abs(数字))