[英]Overflow runtime error 6 VBA
我想知道我在代码中做错了什么。 我已经将所有内容更改为Long,但仍然收到溢出错误。 请帮忙。 该行:
Binary = Binary + Generation(i, j) * 10 ^ (j - 1)
已突出显示为黄色。
完整代码:
Dim Generation() As Long
Dim Fitness() As Long
Dim i, j As Long
Dim Binary As Long
Dim Binary2 As Long
Dim Initial As Long
Dim x, y As Long
Private Sub ButtonGeneratePopulation_Click()
Initial = Val(InitialPopulation.Value)
ReDim Generation(Initial, 30) As Long
Randomize
For i = 1 To Initial
For j = 1 To 30
If Rnd > 0.5 Then
Generation(i, j) = 1
Else
Generation(i, j) = 0
End If
Next j
Next i
For i = 1 To Initial
Binary = 0
For j = 1 To 30
Binary = Binary + Generation(i, j) * 10 ^ (j - 1)
Next j
Cells(i, 1) = Binary
Next i
InitialPopulation.Enabled = False
End Sub
Dim Generation() As Long
Dim Fitness() As Long
Dim i As Long, j As Long
Dim Binary As Double '<~~~ this is double
Dim Binary2 As Long
Dim Initial As Long
Dim x As Long, y As Long
Private Sub ButtonGeneratePopulation_Click()
Initial = Val(InitialPopulation.Value)
ReDim Generation(Initial, 30) As Long
Randomize
For i = 1 To Initial
For j = 1 To 30
If Rnd > 0.5 Then
Generation(i, j) = 1
Else
Generation(i, j) = 0
End If
Next j
Next i
For i = 1 To Initial
Binary = 0
For j = 1 To 30
Binary = Binary + Generation(i, j) * 10 ^ (j - 1)
Next j
Cells(i, 1) = Binary
Next i
InitialPopulation.Enabled = False
End Sub
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.