안녕하세요 여러줄문자 내용중 한 문자에서 동일한 내용을 수정하는 리습이 필요합니다.
현재 제가 가지고 있는 리습은 뒷쪽만 변경되는 리습뿐입니다. 앞에도 같이 변경되는 리습
혹시 가능할까요??
예를 들어
안녕하세요 윤스 79입니다.
50,800,800,56,76
이런 여러줄 문자가 있으면 800부분을 900으로 일괄수정하는 리습이 꼭 필요합니다..ㅠㅠ
고수님들 꼭 도와주세요.
참고로 뒷쪽만 변경되는 리습 코드입니다.
(defun C:yQ (/ sset n index txlist tx newtx newlist tx1)
(prompt “n Multi TEXTs Change..Pick Texts…<according DIMENSION>..”)
(setq o_txt (getstring “n ORIG’L TEXT in-put….”))
(setq n_txt (getstring “n NEW TEXT in-put….”))
(setq o_qty (strlen o_txt))
(prompt “nPick TEXTs to change…”)
(setq sset (ssget ))
(setq count (sslength sset))
(setq osu 0)
(repeat count
(COND ((OR (= (cdr (assoc 0 (setq txtin (entget (ssname sset OSU))))) “MTEXT”)
(= (cdr (assoc 0 (setq txtin (entget (ssname sset OSU))))) “TEXT”)
)
(setq newtx (cdr (assoc 1 (setq txtin (entget (ssname sset OSU))))) )
;;;(setq txtin (entget (ssname sset osu)))
(setq txt (cdr (assoc 1 txtin)))
(setq su 1)
(setq index 0)
(setq rm-k “”)
(setq rm+k “”)
(setq rmsame nil)
(setq co (strlen txt))
(repeat co
(setq rmk (substr txt su o_qty))
(setq rm-k (substr txt 1 (- su 1)))
(setq rm+k (substr txt (+ su o_qty) co))
(cond ((= o_txt rmk)
(setq f_txt (strcat rm-k n_txt rm+k))
(setq rmsame 111)
))
(setq su (+ su 1))
)
(if (= rmsame 111) (entmod (subst (cons 1 f_txt) (assoc 1 txtin) txtin)))
))
(setq osu (+ 1 osu))
)
)
헐~~~~~ 그리습어디서 구하신거죠….. 예전에 울 회사에서 만든 리습같은데
물론 제가 만들진 않았지만… 제가 예전에 많이 사용하던거였거든여..
조금씩 다른 위치에 들어가는 이유?….
이런 이유일 가망도 있죠.. 도면의 크기가 다른경우.. 테두리선 밖으로
객체중의 일부가 조금이라도 삐져나와 있으면 다른위치에 들어갑니다..
그리고 위에서 말씀 하신것처럼 스냅이 잡혀있어도 그럴확률이..
제 경험담임다…^^
그 두이유도 아님 다쉬 글올려주세여,..
그렇게..하니
text의 위치가..엉뚱한곳으로 들어가요..
ㅠㅠ
ㅇㅇ
ㅇㅇ