Code:
(defun C:SH1 (/
entSelection
intCount
objAttribute
objSelection
ssSelections
strTextstring
)
(if (setq ssSelections (ssget (list (cons 2 "SH"))))
(repeat (setq intCount (sslength ssSelections))
(setq intCount (1- intCount)
entSelection (ssname ssSelections intCount)
objSelection (vlax-ename->vla-object entSelection)
)
(foreach objAttribute (vlax-invoke objSelection "getattributes")
(if (= (vla-get-tagstring objAttribute) "A2")
(if (/= (setq strTextstring (vla-get-textstring objAttribute)) "")
(progn
(setq lstInsertion (vlax-get objSelection "insertionpoint")
lstInsertion (list (car lstInsertion)
(cadr lstInsertion)
(atof strTextString)
)
)
(vlax-put objSelection "insertionpoint" lstInsertion)
)
)
)
)
)
)
)
(vl-load-com)
Additional Filtering of Attributes
Code:
(defun C:SH1 (/
entSelection
intCount
objAttribute
objSelection
ssSelections
strTextstring
)
(if (setq ssSelections (ssget (list (cons 2 "SH"))))
(repeat (setq intCount (sslength ssSelections))
(setq intCount (1- intCount)
entSelection (ssname ssSelections intCount)
objSelection (vlax-ename->vla-object entSelection)
)
(foreach objAttribute (vlax-invoke objSelection "getattributes")
(if (= (vla-get-tagstring objAttribute) "A2")
(if (/= (setq strTextstring (strcase (vla-get-textstring objAttribute))) "")
(progn
(if (vl-string-search "BC " strTextString)
(setq strTextString (vl-string-subst "" "BC " strTextString))
)
(setq lstInsertion (vlax-get objSelection "insertionpoint")
lstInsertion (list (car lstInsertion)
(cadr lstInsertion)
(atof strTextString)
)
)
(vlax-put objSelection "insertionpoint" lstInsertion)
)
)
)
)
)
)
)
(vl-load-com)