有时候我们在vba代码中要返回任意一个数的整数部分。
比如数值1.23的整数部分为1,5.67的整数部分为5。
一个数值的整数部分就是将该数值的小数部分去除,不进行四舍五入。
vba中提供了一个内置的int函数可以方便的实现这个目的。
代码如下:
Sub QQ1722187970() Dim i As Integer i = VBA.Int(5.64) MsgBox i End Sub
但是如果是一个负数,int函数返回的是小于等于该数值的第一个整数。
比如-5.64,用Int(-5.64)返回的是-6。
如果要返回-5,则需要使用另外一个内置的Fix函数,如果都是正数,返回结果与int函数一样,如果是负数,则返回第一个大于等于该数值的整数。代码如下:
Sub QQ1722187970() Dim i As Integer i = VBA.Fix(-5.64) MsgBox i End Sub
综上所述,如果要在vba中用代码返回任意一个数的整数部分,建议用fix函数。
发表评论