VB编程调试出现下标越界。怎么处理求大神帮忙!

Private Sub Form_Load()
Dim i, j As Integer
Dim T(100, 600) As Long
Dim q(100, 600) As Long
Const x1 = 0.01, t1 = 0.05 * x1
Open "D:\result1.txt" For Output As #1
For i = 0 To 100
T(i, 0) = 1
q(i, 0) = 0
Next
For i = 1 To 99
For j = 0 To 599
T(i, j + 1) = T(i, j) - t1 / (2 * x1) * (q(i + 1, j) - q(i - 1, j))
q(i, j + 1) = q(i, j) - (q(i, j) / T(i, j)) * (t1 / (2 * x1)) * (q(i + 1, j) - q(i - 1, j)) - T(i, j) * t1 / (2 * x1) * (T(i + 1, j) - T(i - 1, j)) - t1 * q(i, j) * T(i, j)
Next j
T(0, j + 1) = 0.5: T(100, j + 1) = 0.5
q(0, j + 1) = q(1, j + 1): q(100, j + 1) = q(99, j + 1)
Next
For i = 0 To 100
Print #1, Format(T(i, 299), "0.0000")
Next
End Sub

For j = 0 To 599
q(i, j + 1) 最大到600

Dim q(100, 600) As Long 下标范围0-599
当然越界了。