Note: The other languages of the website are Google-translated. Back to English

¿Cómo hacer que el nombre de la pestaña de la hoja sea igual al valor de la celda en Excel?

En algunos casos, es posible que deba cambiar el nombre de una hoja de trabajo en función de un valor de celda específico. En este artículo, le mostraremos métodos para hacer que el nombre de la pestaña de la hoja sea igual al valor de la celda en Excel.

Haga que el nombre de la pestaña de la hoja sea igual al valor de la celda con el código VBA
Haga que el nombre de la pestaña de la hoja sea igual al valor de la celda con Kutools para Excel


Haga que el nombre de la pestaña de la hoja sea igual al valor de la celda con el código VBA

Con el siguiente código VBA, puede hacer que el nombre de la pestaña de la hoja sea igual al valor de la celda automáticamente.

1. Haga clic con el botón derecho en la pestaña de la hoja en la que desea que el nombre de la hoja sea igual al valor de la celda, luego haga clic en Ver código desde el menú contextual. Ver captura de pantalla:

2. Copie y pegue el código siguiente en la ventana Código y luego presione otro + Q teclas simultáneamente para cerrar la ventana de Microsoft Visual Basic para Aplicaciones.

Código de VBA: haga que la pestaña de la hoja sea igual al valor de la celda

Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 20230130
    On Error Resume Next
    If Not Intersect(Target, Range("A1")) Is Nothing Then
        ActiveSheet.Name = ActiveSheet.Range("A1")
    ElseIf Not Intersect(Target.Dependents, Range("A1")) Then
        ActiveSheet.Name = ActiveSheet.Range("A1")
    End If
End Sub

Nota:: En el código, A1 es la celda que contiene el valor que necesita usar como nombre de hoja. Puede cambiarlo cuando lo necesite.

A partir de ahora, cuando cambie el valor en la celda A1, el nombre de la pestaña de la hoja también se cambiará por igual.


Haga que el nombre de la pestaña de la hoja sea igual al valor de la celda con Kutools para Excel

En esta sección, te presentamos las Cambiar el nombre de varias hojas de trabajo utilidad de Kutools for Excel. Con esta utilidad, puede cambiar fácilmente el nombre de las hojas de trabajo con cierto valor de celda en Excel.

Antes de aplicar Kutools for Excel, Por favor descargarlo e instalarlo en primer lugar.

1. Hacer clic en Kutools Más > Hoja de trabajo > Cambiar el nombre de varias hojas de trabajo. Ver captura de pantalla:

2. En el Cambiar el nombre de varias hojas de trabajo cuadro de diálogo, debe hacer lo siguiente.

1). Compruebe los nombres de las hojas de trabajo que desea cambiar de nombre en el Hojas de trabajo cuadro (puede seleccionar una hoja o varias hojas).
2). Seleccione Reemplazar el nombre de la hoja original en el cuadro Cambiar nombre de opciones .
3). Si desea cambiar el nombre de una hoja de trabajo o varias hojas de trabajo con el valor de celda especificado, seleccione el De rango específico y seleccione el rango de celdas en el que desea cambiar el nombre de las hojas.
4). Haga clic en el OK botón. Ver captura de pantalla:

Puede ver que las hojas de trabajo seleccionadas cambian de nombre por el valor de rango especificado inmediatamente, como se muestra a continuación.

Notas:

1. Puedes usar el Filtrar función para filtrar fácilmente la hoja de trabajo necesaria si existen muchas hojas de trabajo.
2. Si desea cambiar el nombre de varias hojas de trabajo con un determinado valor de celda en cada hoja. Por ejemplo, sheet1 será igual al valor de su celda A1, y sheet2 también será igual al valor de su celda A1. Seleccione hojas de trabajo en el Hojas de trabajo cuadro, luego seleccione el Cambiar el nombre de las hojas de trabajo con una celda específica opción y especifique la celda A1 en el cuadro.

3. El nombre de la hoja no se cambiará automáticamente con los cambios en el valor de la celda.

  Si desea tener una prueba gratuita (30-día) de esta utilidad, haga clic para descargarloy luego vaya a aplicar la operación según los pasos anteriores.


Haga que el nombre de la pestaña de la hoja sea igual al valor de la celda con Kutools para Excel


Las mejores herramientas de productividad de oficina

Kutools para Excel resuelve la mayoría de sus problemas y aumenta su productividad en un 80%

  • Reutilizar: Inserte rápidamente fórmulas complejas, gráficos y cualquier cosa que hayas usado antes; Cifrar celdas con contraseña; Crear lista de distribución y enviar correos electrónicos ...
  • Barra de súper fórmula (edite fácilmente varias líneas de texto y fórmulas); Diseño de lectura (leer y editar fácilmente un gran número de celdas); Pegar en rango filtrado...
  • Combinar celdas / filas / columnas sin perder datos; Contenido de celdas divididas; Combinar filas / columnas duplicadas... Prevenir celdas duplicadas; Comparar rangos...
  • Seleccione Duplicado o Único Filas; Seleccionar filas en blanco (todas las celdas están vacías); Super Find y Fuzzy Find en muchos libros de trabajo; Selección aleatoria ...
  • Copia exacta Varias celdas sin cambiar la referencia de la fórmula; Crear referencias automáticamente a varias hojas; Insertar viñetas, Casillas de verificación y más ...
  • Extraer texto, Agregar texto, Eliminar por posición, Quitar espacio; Crear e imprimir subtotales de paginación; Convertir entre contenido de celdas y comentarios...
  • Súper filtro (guardar y aplicar esquemas de filtros a otras hojas); Orden avanzado por mes / semana / día, frecuencia y más; Filtro especial en negrita, cursiva ...
  • Combinar libros y hojas de trabajo; Combinar tablas basadas en columnas clave; Dividir datos en varias hojas; Conversión por lotes de xls, xlsx y PDF...
  • Más de 300 potentes funciones. Compatible con Office/Excel 2007-2021 y 365. Compatible con todos los idiomas. Fácil implementación en su empresa u organización. Funciones completas Prueba gratuita de 30 días. Garantía de devolución de dinero de 60 días.
pestaña kte 201905

Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil

  • Habilite la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
  • ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!
officetab parte inferior
Comentarios (28)
Aún no hay calificaciones. ¡Sé el primero en calificar!
Este comentario fue minimizado por el moderador en el sitio
Pegué esto según las instrucciones, pero no apareció en mi lista de macros disponibles. Intenté ejecutarlo manualmente tecleando el nombre de la macro. Cuando intentó ejecutar la Macro, apareció un mensaje de error "Argumento no opcional".

Sub hoja de trabajo privada_Cambio (según el rango de destino ByVal)
Si no interseca (objetivo, rango ("A1")) no es nada, entonces
HojaActiva.Nombre = HojaActiva.Rango("A1")
Si terminar
End Sub

¿Alguien más ha ejecutado este código y ha tenido el mismo problema?

Como prueba, ejecuté un código más básico y funcionó bien, por lo que el valor en "A1" no está causando el problema. Cuando ejecuto el siguiente código, puedo ver el nombre de macro "myTabName" en la lista de macros. El código anterior no aparece y supongo que esto se debe al error/argumento faltante.

Sub myTabName()
HojaActiva.Nombre = HojaActiva.Rango("A1")
End Sub

Gracias por su ayuda, ya que me gustaría mucho usar el código como está previsto para automatizar los cambios de nombre de pestaña en función de un valor de celda.
Este comentario fue minimizado por el moderador en el sitio
Querido Jason,
El código funciona bien en mi caso. ¿Podría proporcionar su versión de Office? Gracias por tu comentario.
Este comentario fue minimizado por el moderador en el sitio
Hola Crystal,

A mí tampoco me funcionó, ¿podría ser porque la celda a la que me refiero es una fórmula?

Gracias por responder
Este comentario fue minimizado por el moderador en el sitio
Hola mei

Gracias por tus comentarios. El problema fue causado por la fórmula. El código ha sido modificado. Por favor inténtalo.

Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 20230130
    On Error Resume Next
    If Not Intersect(Target, Range("A1")) Is Nothing Then
        ActiveSheet.Name = ActiveSheet.Range("A1")
    ElseIf Not Intersect(Target.Dependents, Range("A1")) Then
        ActiveSheet.Name = ActiveSheet.Range("A1")
    End If
End Sub
Este comentario fue minimizado por el moderador en el sitio
Estoy haciendo que este código funcione, pero no actualiza automáticamente el nombre de la pestaña cuando la celda extrae el nombre si hace referencia a otra celda (y esa celda cambia).


Es decir, cambio una celda en una lista maestra, que cambia el texto de la celda en una celda específica en cada pestaña, a la que el código hace referencia como el nombre de la pestaña, PERO la pestaña no actualiza su nombre correspondientemente.
Este comentario fue minimizado por el moderador en el sitio
Buenos días,
El siguiente código de VBA puede resolver su problema. Gracias por tu comentario1

Sub hoja de trabajo privada_Cambio (según el rango de destino ByVal)
Dim xRg como rango, xCell como rango
On Error Resume Next
Si no interseca (objetivo, rango ("A1")) no es nada, entonces
HojaActiva.Nombre = HojaActiva.Rango("A1")
Si terminar
Application.EnableEvents = False
Establecer xRg = ActiveSheet.Range("A1").Precedentes
Si no xRg no es nada, entonces
Para cada xCell en xRg
HojaActiva.Nombre = HojaActiva.Rango("A1")
Siguiente
Si terminar
Application.EnableEvents = True
End Sub
Este comentario fue minimizado por el moderador en el sitio
Todavía no funciona. Tengo el mismo problema que jJJ. crystal: ¿Se muestra el código completo en su respuesta?
La última línea que se muestra en su comentario es "Set xRg = ActiveSheet.Range("A1").Precedents"
Este comentario fue minimizado por el moderador en el sitio
Estimado JAS,
Haga clic en el botón Leer más en el lado derecho del comentario para mostrar el comentario completo.
Este comentario fue minimizado por el moderador en el sitio
Todavía tengo el mismo problema.

Tengo A1 de la nueva hoja apuntando a otra celda en una pestaña diferente. Se actualiza la primera vez (cuando ejecuta) pero luego no cambia al editar la celda maestra
Este comentario fue minimizado por el moderador en el sitio
Sub hoja de trabajo privada_SelectionChange (ByVal Target As Excel.Range)
Establecer objetivo = rango ("A1")
Si Target = "" Entonces Salir de Sub
En caso de error Ir a nombre incorrecto
ActiveSheet.Name = Izquierda (Objetivo, 31)
Exit Sub
Mal nombre:
MsgBox "Revise la entrada en A1". & Cr(13) _
& "Parece contener uno o más " & Chr(13) _
& "caracteres ilegales." & Cr(13)
Rango ("A1"). Activar
End Sub
Este comentario fue minimizado por el moderador en el sitio
El problema sigue siendo el mismo, cambia la primera vez. cuando vinculo esa celda a otra hoja y la cambio, no la cambia automáticamente
Este comentario fue minimizado por el moderador en el sitio
Necesito usar este código, pero nunca antes ingresé el código vba. Cualquier orientación sería apreciada.
Este comentario fue minimizado por el moderador en el sitio
Cambio una celda en una lista maestra, que cambia el texto de la celda en una celda específica en cada pestaña, a la que el código hace referencia como el nombre de la pestaña, PERO la pestaña no actualiza su nombre correspondientemente.

---- no es trabajo
Este comentario fue minimizado por el moderador en el sitio
Obtuve el código completo y funcionó. ¡Muchas gracias por tu ayuda!
Este comentario fue minimizado por el moderador en el sitio
Estimado JAS,
Me alegro de poder ayudar.
Este comentario fue minimizado por el moderador en el sitio
Prefieres usar una macro simple



Sub Macro3 ()
Dim índice como entero
Para índice = 1 a 18

Hojas (índice). Nombre = Hojas (índice). Rango ("A2"). Valor

Índice siguiente



End Sub
Este comentario fue minimizado por el moderador en el sitio
Buenos días,
Gracias por compartir.
Este comentario fue minimizado por el moderador en el sitio
Esto es exactamente lo que necesito, pero necesito la pestaña para recrear una fecha y no funciona... Supongo que esto tiene algo que ver con la forma en que Excel funciona con la fecha y la hora, ¿alguien puede sugerir una solución?
Este comentario fue minimizado por el moderador en el sitio
Hola, Nick,
Excel no admite escribir el nombre de la hoja que contiene caracteres especiales. Si la fecha que escribe contiene el carácter /, no le permitirá crear el nombre de la hoja con esa fecha.
Este comentario fue minimizado por el moderador en el sitio
¿Cómo puedo hacer referencia a dos celdas? por ejemplo, nombre y número de identificación?
Este comentario fue minimizado por el moderador en el sitio
Estoy usando su código exacto del anterior para el código VBA que funciona perfectamente para lo que necesito. Sin embargo, tengo un montón de macros en una hoja llamada Plantilla de trabajo que se copia y reutiliza para cada nuevo trabajo. Diseñé todas mis macros en base a una nueva versión copiada llamada Plantilla de trabajo (2). Una vez que se cambia el nombre de la hoja al nuevo nombre del trabajo, las macros ya no funcionan y hay que hacerlo manualmente. Me gustaría poder usar cualquiera de mis botones Macro en cualquier momento en lugar de usarlos solo antes de cambiar el nombre de la hoja.

¿Hay alguna forma de que el código VBA siempre se refiera al nombre de la hoja antes de ejecutar el resto de las funciones del código?
Este comentario fue minimizado por el moderador en el sitio
¿Cuál es el número más alto de hojas de trabajo que se pueden cambiar de nombre a través de Kutools Plus? porque el excel me deja solo 17 nombres a cambios, y ya esta
Este comentario fue minimizado por el moderador en el sitio
Esto funcionó perfectamente para mi primera hoja de trabajo, pero no para la segunda o la tercera, etc. (tengo hasta unas 20 hojas de trabajo que necesitan esta función). ¿Me estoy perdiendo de algo?
Este comentario fue minimizado por el moderador en el sitio
Hola Owen,
Este código solo funciona para una hoja de trabajo por vez. Lo siento por los inconvenientes ocasionados.
Este comentario fue minimizado por el moderador en el sitio
Hola Crystal,

Cuando pego su código, aparece el error "tipo definido por el usuario no definido".

Gracias.
Este comentario fue minimizado por el moderador en el sitio
Hola TomJ,
Asegúrese de que estas tres opciones estén marcadas en el cuadro de diálogo Referencias - VBAProject.
https://www.extendoffice.com/images/stories/comments/comment-picture-zxm/error.png
Este comentario fue minimizado por el moderador en el sitio
funcionó maravillosamente!
Este comentario fue minimizado por el moderador en el sitio
hola,
que voulez-vous dire par appuyer autre autre+q dans le code vba après avoir collé.
J'ai simplement fermé la page après avoir collé et ça ne marche pas
gracias
No hay comentarios publicados aquí todavía
Deje sus comentarios
Publicar como invitado
×
Califica esta publicación:
0   Personajes
Ubicaciones sugeridas

Seguinos

Copyright © 2009 - www.extendoffice.com. | Reservados todos los derechos. Energizado por ExtendOffice, | Mapa del Sitio
Microsoft y el logotipo de Office son marcas comerciales o marcas comerciales registradas de Microsoft Corporation en los Estados Unidos y / o en otros países.
Protegido por Sectigo SSL