Определение имени блока

Автор Тема: Определение имени блока  (Прочитано 4628 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Оффлайн ZailarАвтор темы

  • ADN OPEN
  • Сообщений: 17
  • Карма: 0
Определение имени блока
« : 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.  

но по какой то причине он не может корректно определить имя блока, и вместо этого сам назначает ему другое имя. Где может быть косяк? Файл с блоком прилагаю.

Отмечено как Решение Zailar 12-08-2019, 13:41:39

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13886
  • Карма: 1788
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Определение имени блока
« Ответ #1 : 12-08-2019, 09:55:58 »
Если блок динамический, то вместо Name нужно использовать EffectiveName.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение