带浮点数的Mod给出错误的结果
当我尝试这个代码:
A = 19 Mod 6.7
结果是5,但应该是5.6有人可以说我最近出了什么问题吗?
令人烦恼的是,VBA会将6.7
到7
取整,因为它没有浮点模数函数(参考Java)。
有效地,它评估19 Mod CInt(6.7)
, CInt
使用德国舍入,而不是整数截断。
如果要在工作表上复制MOD函数的行为,请参阅与Excel的mod函数等效的VBA
MOD是VBA中的整数函数。 最好使用:
a - (b * (a / b))