Daniel. if you woul've requested that particualr function on your previous post at CTT, i would have given you an answer.
Anyhoo. I guess the more the better 
Code:
(defun ReTagDup (bname Tag2Inc / bname Tag2Inc Blocks Found)
(vl-load-com)
(setq TagLoop Tag2Inc)
(if (setq Blocks (ssget "_X" (list '(0 . "INSERT")'(66 . 1)(cons 2 bname))))
(progn
(repeat (sslength blocks)
(setq Found
(vl-remove-if-not
'(lambda (x)
(assoc (car x) Tag2Inc))
(mapcar (function
(lambda (at)
(list (vla-get-tagstring at)
at)
))
(vlax-invoke (vlax-ename->vla-object (setq e (ssname Blocks 0)))
'Getattributes)
)))
(foreach itm (vl-sort Found '(lambda (j k)
(< (car j)(car k))))
(setq inc (assoc (Car itm) TagLoop))
(vla-put-tagstring (cadr itm) (strcat (car inc) (itoa (setq i (cadr inc)))))
(setq TagLoop (subst (list (car inc) (setq i (1+ i))) inc TagLoop))
)
(setq TagLoop Tag2Inc)
(ssdel e blocks)
)
(vlax-for att (vla-item (vla-get-blocks
(vla-get-ActiveDocument (vlax-get-acad-object)))
bname)
(if (and (eq (vla-get-objectname att)
"AcDbAttributeDefinition")
(setq ren (assoc (vla-get-tagstring att) Tag2Inc)))
(progn
(vla-put-tagstring
att
(strcat (car ren)
(itoa (setq i (cadr ren)))))
(setq Tag2Inc
(subst (list (car ren)
(setq i (1+ i)))
ren
Tag2Inc))))
)
(command "_attsync" "_Name" bname)
)(princ "\n0 Objects Selected")
)
(princ)
)
Code:
(ReTagDup "A3TITLE" '(("EQUIPMENT" 1)("NAME" 1)("NUMBER" 1)))