Option Explicit Sub DuplicaLibro() ThisWorkbook.SaveCopyAs Filename:=ThisWorkbook.Path & "\" & _ Format(Now, "yyyymmdd") & Chr(32) & ThisWorkbook.Name MsgBox "Fichero duplicado", vbInformation End SubGuardará una copia del libro activo en la misma ruta del libro, con el nombre precedido de la fecha y un espacio. P. ej.: Libro1.xlsm se guardará como 20140519 Libro1.xlsm.Si también queremos la hora reemplazamos por "yyyymmdd" por "yyyymmdd-hhmmss" u otro formato deseado.
Aparecerá esta ventana emergente al finalizar:
En el caso de que el fichero ya cuente con una fecha y espacio delante del nombre del fichero, empleamos este macro:
Option Explicit Sub DuplicaLibro2() Dim sNomb As String, sNombSinFecha As String ' Nombres con y sin fecha sNomb = ThisWorkbook.Name sNombSinFecha = Right(sNomb, Len(sNomb) - InStr(1, sNomb, " ")) ThisWorkbook.SaveCopyAs Filename:=ThisWorkbook.Path & "\" & _ Format(Now, "yyyymmdd-hh.mm.ss") & Chr(32) & sNombSinFecha MsgBox "Fichero duplicado", vbInformation End SubExtrae el nombre del fichero sin fecha y le añade la fecha actualizada.
No hay comentarios:
Publicar un comentario