Есть следующий код:
Public Sub FillImpList()
lbImp.Clear
lbImpDel.Clear
lbImpEdited.Clear
For i = 2 To 65536
If Worksheets("ImpData").Cells(i, 1) = "" Then
Exit For
End If
If Worksheets("ImpData").Cells(i, 1) = cbPersonNo.Value And _
Worksheets("ImpData").Cells(i, 1).Interior.ColorIndex <> 3 Then
Dim s As String
s = Worksheets("ImpData").Cells(i, 2).Text
Me.lbImp.AddItem (s)
Me.lbImp.List(lbImp.ListCount - 1, 1) = Worksheets("ImpData").Cells(i, 3).Text
Me.lbImp.List(lbImp.ListCount - 1, 2) = Worksheets("ImpData").Cells(i, 4).Text
Me.lbImpDel.AddItem s
Me.lbImpDel.List(Me.lbImpDel.ListCount - 1, 1) = Worksheets("ImpData").Cells(i, 3).Text
Me.lbImpDel.List(Me.lbImpDel.ListCount - 1, 2) = Worksheets("ImpData").Cells(i, 4).Text
End If
Next i
End Sub
При выполнении выполненной строки Excel вылетает. Значение переменной s в отладчике просматривается корректно. Но, что самое интересное, что если сделать точку останова до этой строки, то весь код проходит нормально без вылета экселя и в дальнейшем, пока не закроешь эксель все нормально работает.
Excel 97 SP2
Могу выслать все исходники для анализа
Спасибо.
Денис