Macro que exporte hoja de 1 libro a otro nuevo

Necesito desarrollar una macro para Excel que exporte una de las hojas de mi libro a un libro nuevo preguntando al usuario la ruta donde quiere guardar el nuevo libro. He logrado exportar la hoja a un nuevo libro marcándole yo una ruta específica y un nombre para el nuevo libro, pero lo que necesito que se le pregunte al usuario con qué nombre y en qué ubicación quiere que se guarde el nuevo libro con la información exportada.

1 respuesta

Respuesta
1
Sub Crear()
Dim Hojak As String
Dim Dirk As String
Hojak = InputBox("Ingrese el Nombre de la hoja que desea copiar")
Dirk = InputBox("Ingrese la dirección y el nombre del nuevo archivo que desea guardar:Ejm: C:\"Nombre del Archivo.xls"")
Sheets(hojak).Select
Cells.Select
Selection.Copy
Workbooks.Add
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveWorkbook.SaveAs Filename:=Dirk, FileFormat:= _
        xlOpenXMLWorkbook, CreateBackup:=False
    ActiveWindow.Close
End Sub
Si esto resolvió tu pregunta no olvides finalizar la pregunta
Eso no me sirve porque debe poderse navegar por la estructura de ficheros del sistema para guardar en la ruta que se quiera, en lugar de tener que ponerlo por texto.
Al final lo he hecho con Application.Dialogs(xlDialogSaveAs).Show
De todas maneras gracias. Aún así me ha surgido otro problema, ¿se pueden copiar varias hojas a la vez?
Perdón por haber formulado la pregunta de manera ambigua.
Es posible programar una macro para copiar varias hojas de una plantilla (que aún no se ha guardado como documento) a un nuevo libro que tampoco se ha guardado previamente, sino que se ha creado por la misma macro.
Mientras las hojas que necesites seleccionar tengan nombres que conozcas o que puedas determinar de alguna manera es posible, y que la macro no ve si el archivo esta guardado o no para ejecutarse, lo que si necesitas es que luego de Workbooks. Add hagas todo lo que necesites en el nuevo libro, ya que si por alguna razón regresas al libro original, la macro te va a pedir el nombre del archivo al que debes ir, y claro que; o podrías guardar previamente el archivo o podrías utilizar ActiveWindow. ActivateNext
Depende de como se acomode tu macro
Si esto resuelve tu pregunta no olvides finalizar la pregunta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas