(defunc:test (/ efname ob blks cnt i)(vl-load-com)
(setqefname
(lambda (k)
(vla-get-effectivename
(if (eq (type k) 'ENAME )
(vlax-ename->vla-object k) k)
)
)
)
(while (setq ob (ssget "_:S:E" '((0 . "INSERT"))))
(setq cnt 0)
(if (setq blks (ssget "_X"
(list '(0 . "INSERT")
(cons 2
(strcat (setq bn (strcase (efname (ssname ob 0)))) ",`*U*"
)
)
)
))
(progn
(repeat (setq i (sslength blks))
(if (eq (strcase (efname (ssname blks (setq i (1- i))))) bn)
(setq cnt (1+ cnt))))
(alert
(strcat "There are "
(itoa cnt) " \"" bn
"\" Block(s) on this drawing file:"
)
)
)
)
)
(princ)
)
哇-谢谢你的快速回复。只是一个障碍“错误:没有函数定义:VLAX-ENAME->VLA-OBJECT” 缺失(vl load com)。。帖子已更新。现在就试试 -非常感谢。好极了
不客气。
但实际上,如果你通读这个线程,你会注意到代码上的所有内容都来自之前的响应。
玩得高兴
页:
1
[2]