Hi,
I test :
Code:
(defun c:putfield ()
(vl-load-com)
(setq elemname (car (entsel "\nMText avec champ: ")))
; <Nom d'entité: b1ca7850>
(setq elemdata (entget elemname))
(setq tval (cdr (assoc 1 elemdata)))
; "\\pt9375;SANITAIRES\\P166702475"
(setq dict (vlax-vla-object->ename (vla-GetExtensionDictionary (vlax-ename->vla-object elemname))))
; <Nom d'entité: b8a7c920>
(setq flst (entget (cdr (assoc 360 (entget (cdr (last (dictnext dict "ACAD_FIELD"))))))))
;
(setq fexp (cdr (assoc 2 flst)))
; Valeur lue = "\\AcObjProp Object(%<\\_ObjIdx 0>%).Area \\f \"%lu2%pr0\""
;
; %<\AcObjProp Object(%<\_ObjId 2982842160>%).Area \f "%lu2%pr0">%
;
; %<\AcObjProp.16.2 Object(%<\_ObjId 2982842160>%).Area \f "%lu2%pr0%ps[, m2]%ct8[1.000000000000000E-005]">%
; %<\AcObjProp.16.2 Object(%<\_ObjId 2982842160>%).Area \f "%lu2%pr0%ps[, m2]%ct8[1.000000000000000E-005]">%
;
; 223144020.2024
;
(setq newstr "\\AcObjProp.16.2 Object(%<\\_ObjIdx 0>%).Area \\f \"%lu2%pr0%ps[, m2]%ct8[1.000000000000000E-006]\"")
(setq flst (subst (cons 2 newstr) (assoc 2 flst) flst))
(entmod flst)
(setq elemnamevla (vlax-ename->vla-object elemname))
(vla-put-textstring elemnamevla (vla-fieldcode elemnamevla))
(princ)
)
Just a question how get the ObjId 2982842160 ?
Daniel OLIVES