您在第#5号帖子中错误地给出了属性块的名称。
因此,在我的代码中更改块的名称,如下所示:
(setq tag "DT3" ss(ssget "_X" '((0 . "INSERT") (66 . 1) (2 . "Title-A1-Text")) ))
运行代码并告诉我。 我的2美分,完全借用了帕特里克的密码:
(defun C:TBP (/ adoc alayouts match tag)
(setq
tag"DT3"
match "(PART *"
)
(setq adoc
(vla-get-activedocument(vlax-get-acad-object))
alayouts
(vla-get-layouts adoc))
(vlax-for alayout alayouts
(vlax-for obj (vla-get-block
alayout)
(if (and (eq "AcDbBlockReference"(vla-get-objectname
obj))
(eq (strcase (vla-get-effectivename obj))
"TITLE_A1_TEXT")
(vlax-write-enabled-p obj))
(vl-some
'(lambda (x)
(if
(and
(eq (vla-get-tagstring x)
tag)
(wcmatch (strcase (setq str (vla-get-textstring
x))) match)
)
(vl-catch-all-error-p
(vl-catch-all-apply
'vla-put-textstring
(list x
(strcat "MEP " str))
)
)
)
)
(vlax-invoke
obj 'getattributes)
)
)
)
)
(princ)
)
谢谢,PBe 谢谢pBe
其作品。。。。。 你试过我的密码吗?
页:
1
[2]