| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,049
|
тоже нужны админские права - чтобы энаблер доставить в акад, как и для студии. Да и еще про производительность тыц. Может в новых версиях подправили - но в 2012 акаде подтормаживание реально чувствовал на неслабой машине с SSD. В конечном итоге попросил админа снести этот энаблер VBA.
----- добавлено через ~2 мин. ----- это время не пропадет - в офисе Майкрософта VBA пока очень даже востребован) |
|||
|
||||
Цитата:
энаблер VBA для работы с СОМ АК не нужен. с любого офисного приложения можно подключаться ихним редактором. а можно на коленке в блокноте наваять типа Код:
----- добавлено через ~13 мин. ----- Цитата:
Код:
__________________
Мастерская СПДС Последний раз редактировалось doctorraz, 07.08.2018 в 11:37. |
||||
|
||||
Регистрация: 11.10.2014
Сообщений: 24
|
Спасибо - работает!
У меня правда уже у самого получилось сделать, но только разделив на две команды: ThisDrawing.SendCommand "(defun c:selset-gripset ( / selSets selres selSpdsNode item)(vl-load-com)(setq selSets (vla-get-SelectionSets (vla-get-ActiveDocument (vlax-get-acad-object))))(setq selSpdsNode (vla-item selSets ""test4""))(setq selres (ssadd)) (vlax-for item selSpdsNode (ssadd (vlax-vla-object->ename item) selres) ) (sssetfirst nil selres) (princ))\n" а потом вызвать: ThisDrawing.SendCommand "selset-gripset" & vbCrLf А с одной строкой что-то не разобрался |
|||
|
||||
Код:
__________________
Мастерская СПДС |
||||
|
||||
Регистрация: 11.10.2014
Сообщений: 24
|
Цитата:
Например, в VBA идет перебор объектов (objEnts as AcadEntity). И если какой-то объект подходит под условие - сразу его выделить командой типа ThisDrawing.SendCommand "(progn(defun.... |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,049
|
|
|||
|
||||
Регистрация: 11.10.2014
Сообщений: 24
|
Вопрос в другом. Насколько я понимаю, в набор AcadSelectionSet можно добавлять только массив объектов. Есть к примеру задача - выделить из выбранных пользователем объектов только те, которые удовлетворяют условию 1. Я перебираю все элементы коллекции AcadSelectionSet и подходящие надо заносить в в какой-то массив... Но тут возникает вопрос безразмерного массива, я же заранее не знаю сколько получится объектов. Вот мне и показало проще выделять сразу по ходу анализа... а можно ли выделить сразу объект, а не набор - не знаю.
|
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,049
|
ну ничто не мешает массиву объектов состоять из одного элемента)
в VBA есть динамические массивы (Redim, Redim Preserve), коллекции (Сollection). |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
VBA Есть ли возможность графики в VBA на форме (PictureBox)? | Alexey_02 | Программирование | 8 | 13.02.2013 14:08 |
Есть ли программа для присвоения примитивам в чертеже свойства аннотативности? | Chapter | Программирование | 12 | 08.07.2010 00:30 |
Получения списка кривых на чертеже (VBA) | Тензор | Программирование | 3 | 12.12.2009 19:39 |
Запись макросов VBA в ACAD`e; возможность есть? | ssv22 | Программирование | 9 | 19.02.2009 20:22 |
примитивы в VBA... | Хотабыч | Программирование | 1 | 22.08.2005 13:10 |