本帖最后由 highflybird 于 2011-12-22 20:28 编辑
flytoday 发表于 2011-12-22 19:32
忘了忘了搞定了
如果用程序可以这样
- (vl-load-com)
- (defun c:test( / ss n ent obj txt IsExist)
- (setq ss (ssget '((0 . "*TEXT"))))
- (if ss
- (repeat (setq n (sslength ss))
- (setq ent (ssname ss (setq n (1- n))))
- (setq obj (vlax-ename->vla-object ent))
- (setq txt (vla-get-textstring obj))
- (setq IsExist nil)
- (while (wcmatch txt "*%%128*")
- (setq txt (VL-STRING-SUBST "%%129" "%%128" txt))
- (setq isExist T)
- )
- (and IsExist (vla-put-textstring obj txt))
- )
- )
- (princ)
- )
修改后的代码
- (vl-load-com)
- (defun c:test( / ss n ent obj txt)
- (if (setq ss (ssget '((0 . "*TEXT") (1 . "*%%128*"))))
- (repeat (setq n (sslength ss))
- (setq ent (ssname ss (setq n (1- n))))
- (setq obj (vlax-ename->vla-object ent))
- (setq txt (vla-get-textstring obj))
- (while (wcmatch txt "*%%128*")
- (setq txt (VL-STRING-SUBST "%%129" "%%128" txt))
- )
- (vla-put-textstring obj txt)
- )
- )
- (princ)
- )
|