- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
There are multiples elements in the autocad i need to update my date in this format DD/MM/YYYY.
The selected element inclusive of text, mtext and value in a attribute.
The below code is not working for me
(defun c:replaceTextWithDate (/ dateStr ss)
(setq dateStr (strcat
(rtos (getvar "DAY") 2 0) "/"
(rtos (getvar "MONTH") 2 0) "/"
(rtos (getvar "YEAR") 2 0)))
(if (setq ss (ssget '((0 . "TEXT,MTEXT,INSERT"))))
(progn
(vl-cmdf "_.undo" "_begin")
(foreach obj (mapcar 'cadr (ssnamex ss))
(cond
((eq (cdr (assoc 0 (entget obj))) "TEXT")
(entmod (subst (cons 1 dateStr) (assoc 1 (entget obj)) (entget obj))))
((eq (cdr (assoc 0 (entget obj))) "MTEXT")
(entmod (subst (cons 1 dateStr) (assoc 1 (entget obj)) (entget obj))))
((eq (cdr (assoc 0 (entget obj))) "INSERT")
(setq atts (entget obj)
attList (cdr (assoc -1 atts)))
(foreach att attList
(if (= (cdr (assoc 2 att)) "date")
(setq atts (subst (cons 1 dateStr) att (entget obj)))
)
)
(entmod atts)
)
)
)
(vl-cmdf "_.undo" "_end")
(princ "\nText replaced with today's date.")
)
(princ "\nNo text entities selected."))
(princ)
)
Solved! Go to Solution.