Тема: Как передать в VBA последний вставленный блок?

Вставляю блок strCommand = "-insert" & vbCr и т.д.
Хочу потом поменять ему атрибуты, как это сделать?
ps: Метод .InsertBlock не подходит.

Re: Как передать в VBA последний вставленный блок?

Может непонятно объяснил, попробую еще раз:
Есть неикий код на vba, который по sendcommand отдает пользвателю нарисовать вручную полилиню или вставить блок или еще какой-нибудь объект нарисовать, а потом возвращается в vba , чтобы дальше обрабатывать эти объекты(нарисованные вручную), как передать эти объекты на обработку vba ?

Re: Как передать в VBA последний вставленный блок?

Поместить в модуль ThisDrawing такой код:

Private Sub AcadDocument_ObjectAdded(ByVal Object As Object)
     Dim VarObj As Variant
     Set VarObj = Object
     MsgBox VarObj.ObjectName
End Sub

Кстати, и атрибуты тоже будут извлечены.

Re: Как передать в VBA последний вставленный блок?

Не совсем поняла как использовать эту процедуру в своей функции.
Вот идет выполнение функции, в ходе которой вставляется блок

str_act = "(command ""_insert"" """ & Name & "=" & path & """ """ & strPt & """ ""1"" ""1"" ""0"" ) "
ThisDrawing.SendCommand (str_act)

Далее мне нужно у этого последнего вставленного  блока заполнить атрибуты значениями и как мне вытащить ссылку на последний вставленный блок в моем коде?
Думала по имени блока так вот напрмер

Set whichblock = Blocks.Item("<имя блока>")

Но не подходит, если этот блок несколько раз в чертеже встречается, а нужно отредактировать атрибит у одного экземпляра.

Re: Как передать в VBA последний вставленный блок?

Set blk = ThisDrawing.ModelSpace.Item(ThisDrawing.ModelSpace.Count - 1)

Re: Как передать в VBA последний вставленный блок?

> Anatoly
спасибо