관로번호를 수정할때 쓰는 리습인데.. 예) 12345-1001 <– 기준이 되는 문자
00000-0000<– 변경될문자 를 선택 하면 12345-1002 이런식으로 뒷번호만 하나씩 늘어나는
리습을 아는 분께 부탁해서 만든건데요
; error: bad argument type: lselsetp nil 이라는 에러가 끝에 납니다
어디가 잘못 된건지 좀 알려 주세요
=============================================================================
(defun c:np (/ ii s s1 s2-1 s2-2 s3 s4 ss na lis te2 new newlis)
(setvar “cmdecho” 0)
(setq ii 0)
(prompt “n >>> 기준이 되는 문자를 선택: “)
(setq s (entsel))
(setq s1 (cdr (assoc 1 (entget (car s)))))
(command “chprop” s “” “C” “2” “”)
(prompt “n>>>변경될 문자를 선택 :”)
(while
(setq s2-1 (substr s1 1 6))
(setq s2-2 (atoi (substr s1 7 4)))
(setq s3 (rtos (+ s2-2 1) 2 0))
(setq s4 (strcat s2-1 s3))
(setq ss (ssget))
(setq na (ssname ss ii))
(setq lis (entget na))
(setq te2 (assoc 1 lis))
(setq new (cons (car te2) s4))
(setq newlis (subst new te2 lis))
(entmod newlis)
(setq s1 s4)
(command “chprop” s “” “C” “3” “”)
);;while
(princ “n<<< TEXT PLUS >>>”)
(princ)
);;defun
=============================================================================
공유