;Reply From: Jeff Mishler ;Date: Mar/18/05 - 16:30 (GMT) ; Re: (how to) Replace TAG name ;Heh, trying to post something without testing gets me in trouble ;again......that should be VLAX-PROPERTY-AVAILABLE-P ;Here is the revised code. Note that BillZ version had a minor issue.....it ;was modifying the actual value of the attribute, not the tagstring..... (defun C:CATAG (/ atts idx obj) ;(defun EditAttInBlk (/ atts idx obj) (if (setq ss (ssget "X" (list '(0 . "INSERT") '(66 . 1)))) (progn (setq idx -1) (while (< (setq idx (1+ idx)) (sslength ss)) (setq obj (vlax-ename->vla-object (ssname ss idx)) ) (setq atts (vlax-invoke obj 'getattributes) ) (foreach att atts (if ; (and (wcmatch (strcase (vla-get-tagstring att)) (strcase "CAD-NEW") ) ; (> (strlen (vla-get-tagstring att)) (strlen "location")) ; ) ; (progn (vla-put-tagstring att (strcase "CAD_NEW") ; (strcat (substr (vla-get-tagstring att) 1 8) ; "_" ; (substr (vla-get-tagstring att) 9) ; ) ) ; ) ) ;if ) ;foreach (vlax-for blkobj (vla-item (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object) ) ) (vla-get-name obj) ) (if ; (and (vlax-property-available-p blkobj 'tagstring) (wcmatch (strcase (vla-get-tagstring blkobj)) (strcase "CAD-NEW") ) ; (> (strlen (vla-get-tagstring blkobj)) (strlen "location")) ; ) ; (progn (vla-put-tagstring blkobj (strcase "CAD_NEW") ; (strcat (substr (vla-get-tagstring blkobj) 1 8) ; "_" ; (substr (vla-get-tagstring blkobj) 9) ; ) ) ; ) ) ) ) ) ) ) ;-- ;Jeff