Crear respaldo de libro con macros en otro sin macros

Dan no se si me puedas ayudar,

Tengo un libro con hojas ocultas y barra dezplazadora ocultas etc etc y con más códigos.

Lo que necesito es crear un copia de ese libro pero en un libro excel normal.

Osea con las hojas mostradas, barras etc etc y sin protección esto para poder modificar la copia del libro pero no el libro original (que es el que tiene macros)

1 Respuesta

Respuesta
1

H o  l a:

Te anexo la macro

Sub CopiarLibro()
'Por.Dante Amor
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    Set l1 = ThisWorkbook
    ruta = l1.Path & "\"
    nombre = "nombrearch"
    l1.SaveCopyAs ruta & nombre & ".xlsm"
    Set l2 = Workbooks.Open(ruta & nombre & ".xlsm")
    l2.SaveAs Filename:=ruta & nombre & ".xlsx", FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    For Each h In l2.Sheets
        h.Visible = -1
        h.Unprotect "abc"
    Next
    l2.Save
    l2.Close
    MsgBox "Archivo creado"
End Sub

cambia "abc" por el password de las hojas.

sal u dos

CREO el archivo pero no mostró las hojas, y este se crea dos veces, uno como libro habilitado con macros y otro normal los dos con el nombre de NOMBREARCH

¿Tienes protegido el libro?

Describe con más detalle lo que tienes.

si el libro esta protegido

Private Sub Workbook_Open()
sio
imo
samo
peme
CambiarHoja
exp
NAU
PROTEC
Application.DisplayStatusBar = False 'QUITA BARRA DE MACROS
'Application.Visible = False ' Error occurs here.
On Error Resume Next
SALUDO.Show
ActiveWindow.DisplayHorizontalScrollBar = True
ActiveWindow.DisplayVerticalScrollBar = False
Application.DisplayStatusBar = False 'QUITA BARRA DE MACROS
'EVITAMOS MOVIMIENTO EN EL PRECESO
Application.ScreenUpdating = False


'APLICAMOS LA VISTA DE LA PANTALLA COMPLETA LO CUAL OCULTA LA BARRA DE HERRAMIENTAS
Application.DisplayFullScreen = True
'QUITAMOS LOS TITULOS DE LAS CELDAS
ActiveWindow.DisplayHeadings = False
'OCULTAMOS LA BARRA DE FORMULAS
Application.DisplayFormulaBar = False
'QUITAMOS LAS LINEAS DE LAS CELDAS
ActiveWindow.DisplayGridlines = False

Application.CommandBars("Worksheet Menu Bar").Enabled = False
'QUITAR BARRAS MACROS

'OCULTAR LAS PESTAÑAS DE LAS HOJAS DEL LIBRO
ActiveWindow.DisplayWorkbookTabs = True

ExecuteExcel4Macro ("show.toolbar(""ribbon"",0)")
Application.DisplayStatusBar = False 'QUITA BARRA DE MACROS
Sheets("IMPRESION").Select
End Sub

esto tengo al inicio todas las hojas del libro estan protegidas

La macro que te puse funciona bien.

Realiza lo siguiente, prueba mi macro en otro libro para que veas el funcionamiento.

Ahora, antes de ejecutar mi macro, quita todo lo que tiene tu libro, ejecuta mi macro para que obtengas la copia del libro, regresa todo lo que tiene tu libro.

Sal u dos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas