I am testing a script method which seems to work involves 2 files a script and a lisp, the lisp does the rename bit. Needs amending as no idea what layout name is to be.
The script need to know for how many dwgs open, so will write each time ran. This is 3 dwgs open. Another lisp to make script, maybe a defun in renumlayouts.lsp, last line is (command "script" "renumlayouts.scr")
(setq acDocs (vla-get-documents (vlax-get-acad-object)))
(setq howmany (vlax-get acDocs 'count))
(vla-activate (vla-item acdocs 0))
(load "renumlayouts")
(setq acDocs (vla-get-documents (vlax-get-acad-object)))
(setq howmany (vlax-get acDocs 'count))
(vla-activate (vla-item acdocs 1))
(load "renumlayouts")
(setq acDocs (vla-get-documents (vlax-get-acad-object)))
(setq howmany (vlax-get acDocs 'count))
(vla-activate (vla-item acdocs 2))
(load "renumlayouts")
The lisp
(defun renlays ( / laylst lays lay )
(setq laylst '())
(setq dname (cadr (fnsplitl (getvar 'dwgname ))))
(setq lays (vla-get-layouts (vla-get-activedocument (vlax-get-acad-object))))
(vlax-for lay lays
(setq laylst (cons (list (vla-get-taborder lay) (vla-get-name lay)) laylst))
)
(foreach lay laylst
(if (= (car lay) 0)
(princ)
(command "layout" "R" (cadr lay) (strcat dname "D-" (rtos (car lay) 2 0)))
)
)
(princ)
)
(renlays)
Happy to finish it off adding write script if useful. Else copy past script to suit.