Cambiar nombre a hojas en Excel en base a un rango de celdas mediante macros
En el foro de Ayuda Excel se hizo una pregunta de acerca de cómo cambiar el nombre de las hojas de Excel si los nombres a definir están en un rango de celdas.
En base a esa pregunta es que les comparto una macro que permite cambiar el nombre a las hojas en base a un rango de celdas. La macro tiene un manejo de errores en caso de que haya más hojas que nombres en las celdas.
Vea también: Cambiar nombres a hojas de Excel mediante formulario vba.
Cómo funciona
En el ejemplo comenzaremos a introducir los nombres a asignar en la celda [A13]. El primer requisito para que la macro funcione es que tengamos por lo menos dos hojas en el archivo, en dado caso no funcionará, ya que los nombres se asignar a partir de la segunda hoja.
En cuando a la macro, usaremos el constructor For Next para recorrer las hojas del libro e ir cambiando los nombres en base al contenido del rango donde están los nombres.
Figura 1. Cambiar nombre a hojas en Excel en base a un rango de celdas mediante macros.
Ver Video
Macro vba
A continuación les comparto la macro usada en el ejemplo.
Option Explicit '--------------------------------------------------------------------------------------- ' Module : Módulo1 ' Author : MVP Excel, Sergio Alejandro Campos ' Date : 15/03/2016 ' Purpose : Cambiar nombre a hojas ' Website : www.exceleinfo.com '--------------------------------------------------------------------------------------- ' Sub CambiarNombreHojas() 'Declaramos varibles Dim CeldaInicial As Integer Dim intHojas As Integer Dim i As Integer 'Guardamos el dato de la cantidad de hojas intHojas = ActiveWorkbook.Sheets.Count 'Si hay menor de 2 hojas la macro no continúa. If intHojas < 2 Then MsgBox "Debe haber por lo menos dos hojas en el libro", vbExclamation, "EXCELeINFO" Else 'Recorremos hoja por hoja y cambiamos nombres CeldaInicial = 0 For i = 2 To intHojas On Error Resume Next ActiveWorkbook.Sheets(i).Name = Range("A13").Offset(CeldaInicial, 0).Value CeldaInicial = CeldaInicial + 1 On Error GoTo 0 Next End If End Sub
Descarga el ejemplo
Par aplicar la macro en tus archivo descargar el ejemplo. Si quieres ver el video donde explico este ejemplo aquí mira el video.