Guardar Hoja(hoja3) En Una Carpeta Especifica(C:\Excel\) Con Botón Macro Ubicado en Una Hoja Diferente A La Que Se Va A Guardar

Mi amigo necesito de tu ayuda! Primero quiero darte las gracias por responder el post y luego quiero preguntarte algo:

Primero quiero decirte que este código me sirve a la perfección:

Sub crearcarpeta2()

'Por.DAM
ruta = "C:\Excel\"

arch = Range("A2")

If Dir(ruta & "\" & arch, vbDirectory) = "" Then
   MkDir ruta & "\" & arch

End If

Range("A2:F50").Copy

Workbooks.Add

ActiveSheet.Paste

ActiveWorkbook.SaveAs ruta & arch & "\" & arch

End Sub

Sin embargo, este botón del macro necesito ponerlo en una pagina diferente a la que quiero guardar, es decir, tengo 3 hojas en el libro de excel: hoja1 - hoja2 y hoja3

Quiero que me guarde una copia en una carpeta con el nombre de una celda especifica (A13) únicamente de la "hoja3" pero el botón macro necesito ubicarlo desde la hoja1 para mayor rapidez!

Será posible!?

2 Respuestas

Respuesta
1

Dios te bendiga!

Respuesta
1

Te anexo la macro actualizada

Sub crearcarpeta2()
'Por.Dante Amor
    Application.DisplayAlerts = False
    Application.ScreenUpdating = False
    Set h1 = Sheets("Hoja1")
    Set h3 = Sheets("Hoja3")
    ruta = "C:\Excel\"
    arch = h1.Range("A13")
    If Dir(ruta & "\" & arch, vbDirectory) = "" Then
       MkDir ruta & "\" & arch
    End If
    h3.Copy
    ActiveWorkbook.SaveAs ruta & arch & "\" & arch
    ActiveWorkbook.Close
End Sub

Saludos.Dante Amor

Recuerda valorar la respuesta.

amigo tengo la ultima pregunta!  el macro me sirve a la perfección, esto es lo que necesito!!, solo tengo una necesidad mas, necesito que no me cree sub carpetas, sino que guarde de una vez el libro Excel en la carpeta principal, es decir,  que me haga exactamente lo que hace este Macro pero que no lo guarde en una carpeta si no que me envié directamente el archivo (hoja3) a la dirección "C\:Excel\" y NO a la dirección "C\:Excel\hoja3"

de nuevo mil gracias por la ayuda!!!

Macro actualizada

Sub crearcarpeta2()
'Por.Dante Amor
    Application.DisplayAlerts = False
    Application.ScreenUpdating = False
    Set h1 = Sheets("Hoja1")
    Set h3 = Sheets("Hoja3")
    ruta = "C:\Excel\"
    arch = h1.Range("A13")
    h3.Copy
    ActiveWorkbook.SaveAs ruta & arch
    ActiveWorkbook.Close
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas