I'm not sure what type of entities you're trying to copy to/from but this is one I use to just copy annotation w/o formatting etc. In fact, it may get tripped up if there is formatting inside the text objects. But, it works for what I use it for:
(Defun C:TLC-Copy_Annotation (/ TLV-new TLV-NentSelList tlv-Parent TLV-Newstring TLV-txt2)
;(vl-load-com)
(while (not TLV-new)
(setq TLV-new (vlax-ename->vla-object (car (nentsel "\nSelect Object w/ Desired Annotation: "))))
(terpri)
(princ (vla-get-objectname TLV-new))(princ)
);while
(setq TLV-Newstring (vla-get-textstring TLV-new))
;remove formatting
(if (= (vl-string-search "\\" tlv-newstring) 0)
(Setq tlv-newstring (substr tlv-newstring (+ 2 (vl-string-search ";" tlv-newstring))))
);if
(while (setq TLV-NentSelList (nentsel "\nSelect Text to Insert Annontation: "))
(if (> (length TLV-NentSelList) 2)
(progn
(Setq tlv-new (vlax-ename->vla-object (car tlv-nentsellist)))
(Setq tlv-Parent (vlax-ename->vla-object (car (car (reverse tlv-nentsellist)))))
);progn
(Setq tlv-new (vlax-ename->vla-object (car tlv-nentsellist)))
);if
(if tlv-parent
(cond
(;cond1
(vl-string-search "DIMENSION" (strcase (vla-get-objectname tlv-parent)))
(vla-put-textoverride TLV-Parent TLV-Newstring)
);cond1
(;cond2
(vl-string-search "BLOCK" (strcase (vla-get-objectname tlv-parent)))
(vla-put-textstring tlv-new TLV-Newstring)
(command "regenall")
);cond2
);cond
(vla-put-textstring tlv-new TLV-Newstring)
);if
);while
(command "regenall")
(princ)
);defun
---sig---------------------------------------
'(83 104 110 101 117 112 104 64 71 109 97 105 108 46 99 111 109)