小编Boy*_*son的帖子

当值在十亿或更大时,VBA 中的 Mod 溢出错误

我试图找到一个数 x 的最大素数除数。当 x 小于 10 亿时,我的代码可以工作,但是当它大于 10 亿时,它会出现溢出错误,并且调试会突出显示其中包含 Mod 的行。

 Sub Largest_Divisor()
    Dim x As Double
    Dim Q As Integer
    Q = 0
    Dim L() As Double
    x = 999999999#
    Dim i As Double
    For i = 775145 To 3 Step -2
        If x Mod i = 0 Then
            If IsPrime(i) Then
                ReDim Preserve L(Q) As Double
                L(Q) = i
                Q = Q + 1
            End If
        End If
    Next i
    MsgBox (Application.Max(L))
 End Sub
Run Code Online (Sandbox Code Playgroud)

excel vba modulo

3
推荐指数
1
解决办法
3683
查看次数

标签 统计

excel ×1

modulo ×1

vba ×1