Try this. No error checking, and was writen on the fly. It should point you in the right direction.
Code:
(defun c:MyRev ( / RevNum OldLay OldAttReq OldAttDia)
(setq RevNum (getstring "\n Enter layer number: "))
(command "_.layer" "_m" (strcat "G-ANNO-REVC-" RevNum) "")
(command "_.layer" "_m" (strcat "G-ANNO-REVS-" RevNum) "")
(setq OldLay (getvar "clayer"))
(setq OldAttReq (getvar "attreq"))
(setq OldAttDia (getvar "attdia"))
(setvar "clayer" (strcat "G-ANNO-REVC-" RevNum))
(command "_.revcloud")
(while (> (getvar "cmdactive") 1)
(command pause)
)
(setvar "clayer" (strcat "G-ANNO-REVS-" RevNum))
(setvar "attdia" 0)
(setvar "attreq" 1)
(command "_.insert" EnterYourBlockNameInQuotes pause pause "" pause pause pause)
(setvar "clayer" OldLay)
(setvar "attdia" OldAttDia)
(setvar "attreq" OldAttReq)
(princ)
)
Tim