[Ho la Antonella Tocci y bienvenida a TodoExpertos.
Visita:
---------------------
Prueba la siguiente macro.
En la macro puse comentarios donde tienes que poner tus datos.
Notas:
- El nombre de la hoja debe existir en el libro.
- La carpeta debe existir.
- La celda debe tener un nombre de archivo válido. Si es una fecha se debe formatear en la macro.
Sub copia_hoja()
'Por Dante Amor
Dim hoja As String, carpeta As String, celda As String, nombre As String
'
hoja = "Hoja1" '<-- aquí pon el nombre de la hoja a copiar
carpeta = "C:\trabajo\" '<-- aquí pon el nombre de la carpeta
celda = "C5" '<-- aquí pon la celda que tiene el nombre del archivo
'
nombre = Sheets(hoja).Range(celda).Value
Sheets(hoja).Copy
ActiveWorkbook.SaveAs carpeta & nombre & ".xlsx"
ActiveWorkbook.Close False
MsgBox "Archivo creado"
End Sub
----------------
Recomendaciones:
Curso de macro. Generar archivo y enviar correo en automatico. - YouTube
--------------
Sal u dos Dante Amor