Сообщество программистов Autodesk в СНГ

ADN Club => VBA => Тема начата: Zailar от 11-08-2019, 11:33:54

Название: Определение имени блока
Отправлено: Zailar от 11-08-2019, 11:33:54
Здравствуйте, есть макрос, который должен определять имя блока при его выборе:
Код - Visual Basic [Выбрать]
  1. Sub Insert()
  2.     Dim el As AcadBlockReference
  3.  
  4.     On Error GoTo 2
  5.    
  6.     Set sset = ThisDrawing.SelectionSets.Add("ssone")
  7.     sset.SelectOnScreen
  8.  
  9.  
  10.     For Each el In sset
  11.         zt = el.name
  12.     Next
  13.  
  14.     MsgBox zt
  15.    
  16. 2
  17.  
  18. sset.Delete
  19.  
  20. End Sub
  21.  

но по какой то причине он не может корректно определить имя блока, и вместо этого сам назначает ему другое имя. Где может быть косяк? Файл с блоком прилагаю.
Название: Re: Определение имени блока
Отправлено: Александр Ривилис от 12-08-2019, 09:55:58
Если блок динамический, то вместо Name нужно использовать EffectiveName.