¿cómo obtener el nombre de la hoja en excel?
En Excel, no existe una función directa para obtener el nombre de la hoja activa. Ahora la solución a este problema es crear una fórmula usando múltiples funciones o usar una función personalizada creada usando VBA.
En este tutorial, aprenderá ambos métodos con ejemplos.
Utilice una fórmula para obtener el nombre de la hoja de trabajo
Para crear una fórmula para obtener el nombre de la hoja de trabajo, necesitamos usar las funciones CELLS, FIND y MID. Aquí está la función donde puede obtener el nombre de la hoja.
=MID(CELL("filename"),FIND("]",CELL("filename"))+1,LEN(CELL("filename")))
Ingresa la fórmula anterior en una de las celdas de la hoja de trabajo cuyo nombre desea tener. Ahora entendamos esta fórmula, y para entenderla necesitamos dividirla en cuatro partes.
En la primera parte, tenemos una función CELDA que devuelve la dirección del libro con el nombre de la hoja actual.
Y aquí está la dirección que obtuvimos de la función celular. Aquí puedes ver que tienes el nombre de la hoja al final de la dirección y necesitas obtener el nombre de la misma.
Ahora, en la segunda parte tenemos la función ENCONTRAR que usa la función de celda para obtener la dirección y encontrar la posición del carácter que tiene exactamente una posición delante del nombre de la hoja.
Y una vez que obtenga el número de posición de «]», deberá agregarle 1 para obtener la posición del primer carácter del nombre de la hoja.
Ahora en la tercera parte tienes las funciones LEN y CELL para contar los caracteres en todo el camino.
Ahora, en este punto, tenemos la ruta de la dirección, la posición del primer carácter del nombre de la hoja y la cantidad de caracteres que tenemos en la ruta de la dirección.
Y en la cuarta parte, usando la función MID, tienes el nombre de la hoja en el resultado.
Cree una función definida por el usuario para obtener el nombre de la hoja
Obtener el nombre de una hoja a través de una UDF es la forma más sencilla. No necesitas crear una fórmula compleja, sino un código simple como este.
Function mySheetName() mySheetName = ActiveSheet.Name End Function
Ahora veamos cómo usar este código para extraer el nombre de la hoja de trabajo actual en una celda. Utilice los siguientes pasos:
- Primero, vaya a la pestaña Desarrollador y haga clic en Visual Basic.
- Ahora en el Editor de Visual Basic, vaya a la opción Insertar y haga clic en módulo para insertar un módulo.
- Después de eso, vaya a la ventana de código y pegue allí el código anterior.
- Al final, cierre el editor de Visual Basic y regrese a la hoja de cálculo.
Ahora, seleccione una de las celdas de la hoja de trabajo cuyo nombre desea obtener e ingrese la siguiente función en ella.
Puede obtener más información sobre cómo crear una función personalizada en este tutorial.