Run-time error '9':
Subscript out of range
I believe the problem occurs because the algorithm creates an array with the size equal to the largest input number (which is 3,382,328) that is why it produces an out of range error.
Is there anything that I can do with the algorithm or the programming language or the data type used? I used double as my data type. How do I solve it? Here's the code where the error occurs:
- Code: Select all
Dim q, e, g As Integer
'parr(mini) = maxi
If mini <> maxi Then
If nop > 0 Then
For e = 0 To maxi + 1
'On Error GoTo hell
parri(e) = 0
'hell:
Next e
End If
If non > 0 Then
For g = 0 To Abs(mini) + 1
narr(g) = 0
Next g
End If
'distribution of data to respective array
For q = 1 To size
If Val(ListView2.ListItems(q).ListSubItems(… >= 0 Then
parri(ListView2.ListItems(q).ListSubItem… = Val(parri(ListView2.ListItems(q).ListSub… + 1
Else
narr(Abs(ListView2.ListItems(q).ListSubI… = Val(narr(Abs(ListView2.ListItems(q).List… + 1
End If
Next q
End If
the error occurs in parri(e) = 0
where it creates an array called parri with the size of e where the current value of e is in millions.
How do I fix this? Thanks.


