Nombres a hojas de excel

Buen día experto. Espero me puedas ayudar con lo siguiente: quiero cambiar de nombre a varias hojas de excel. Los nombres los tengo en una lista y quisiera que cada hoja tome un valor de mi lista. Si se tratase de una sola hoja creo que seria  "activeSheet.name=range("A1").value"  Intente con un bucle for pero mi complicacion fue mayor. También, y si no es abuso de confianza experto, quisiera que me indiques como mandar cada hoja a un nuevo libro.
Gracias de antemano
Saludos
Juanjo.
Respuesta
1
Prueba con una macro como esta:
Sub Hojas()
Dim c As Range
Dim s As Worksheet
Dim i, j As Integer
i = 1
For Each c In Selection
Sheets(i).Name = c
i = i + 1
Next c
For j = 1 To Sheets.Count
Sheets(j).Move
ChDir "C:\Temp"
ActiveWorkbook.SaveAs Filename:="C:\Temp\" & Sheets(j).Name
Next j
End Sub

Fíjate que debes tener en una hoja de cálculo (del mismo libro) los nombres de las hojas y los seleccionas todos antes de ejecutar la macro. Esta macro guardaría (teóricamente) cada hoja en un archivo con el nombre de la hoja y en la carpeta C:\Temp.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas