VBA:溢出错误

我有一个错误,我不明白为什么

我有一个function,我没有碰(没有错误),现在它没有工作…我的function刚上线

我试过函数CDbl()并使用doubletypes的variables

我得到一个溢出错误

号码= 1341.0937961001

NbDecimal = 2

Function Truncate(Number As Double, NbDecimal As Integer) As Double Truncate = Int(Number * 10 ^ NbDecimal) / (10 ^ NbDecimal) End Function 'Error here : Overflow 

我需要帮助

当Number * 10 ^ nbDecimal超过32767时,它会溢出,因为这是最大数量的VBA将存储在一个整数。

其实我错了:如果你使用CInt()而不是Int()

要添加到什么查尔斯·威廉斯说,你可能想要改变你的数据types为长。