Тема: сложности с AcadSelectionSet

Задача - нужно выбрать несколько линий, и с ним определённые операции провести...
на форуме нашёл такой вариант реализации "выбора"

    Dim acSelSet As AcadSelectionSet
    ' очищаем если ранне уже выбирали
    While ThisDrawing.SelectionSets.Count > 0
        ThisDrawing.SelectionSets.Item(0).Delete
    Wend
    Set acSelSet = ThisDrawing.SelectionSets.Add("test")
    h = UserFormBase.Height
    ' делаем форму маленькой
    UserFormBase.Height = 10
    ' собстевнно выбираем
    acSelSet.SelectOnScreen
    ' пробегаем циклом, и делаем что надо
    For i = 0 To acSelSet.Count - 1
        If (acSelSet.Item(i).ObjectName = "AcDbLine") Then _
        WriteLineToDB acSelSet.Item(i), current_node_id
    Next i
    ' возвращем размер форме
    UserFormBase.Height = h

на строке acSelSet.SelectOnScreen, перед началом выбором  - вылетает исключение Method 'SelectOnScreen' of object 'IAcadSelectionSet' failed
далее жму Debug, потом F5 - и нормально можно выбрать объекты, код дальше работает.
Вопрос: как избжеть появления ошибки в строке acSelSet.SelectOnScreen?
может есть какой-то другой, более подходящий способ?

Re: сложности с AcadSelectionSet

[rus]
Kak to vse ne tak
Vot poprobuj:
[/rus]

Sub test()
Dim acSelSet As AcadSelectionSet
Dim intDXF(0 To 4) As Integer
Dim varVal(0 To 4) As Variant
Dim AnyObj As AcadEntity
Set objSelCol = ThisDrawing.SelectionSets
For Each acSelSet In objSelCol
    If acSelSet.Name = "Test" Then
      ThisDrawing.SelectionSets.Item("Test").Delete
      Exit For
    End If
Next
  Set acSelSet = ThisDrawing.SelectionSets.Add("Test")
  intDXF(0) = -4
  varVal(0) = "<OR"
  intDXF(1) = 0
  varVal(1) = "LINE"
  intDXF(2) = 0
  varVal(2) = "POLYLINE"
  intDXF(3) = 0
  varVal(3) = "LWPOLYLINE"
  intDXF(4) = -4
  varVal(4) = "OR>"
  UserFormBase.Hide
  acSelSet.SelectOnScreen intDXF, varVal
  For Each AnyObj In acSelSet
     WriteLineToDB AnyObj bla bla bla....
  Next
  acSelSet.Delete
  UserFormBase.Show
End Sub