Mostrar el nombre de la hoja en las hojas de cálculo de Google


Respuestas:


11

Alguien ha escrito un guión para hacer esto. Está disponible en Herramientas > Galería de secuencias de comandos ... . Busque "nombre de hoja" e instale el script, luego úselo con =getCurrentSheetName().


9
¿Cómo acceder a este script en las "nuevas" Hojas de cálculo de Google (que ahora usan una tienda de complementos)?
Benjamin

44
Esto ya no funciona. Use la respuesta de @ user93341. Pasé por todo el proceso para publicar su función en la tienda de complementos y en el último paso querían $ 5 para verificar mi cuenta y estaría limitado a publicar 20 artículos. Le suspiro.
Bruno Bronosky

49

Vaya a HerramientasEditor de secuencias de comandos y agregue este código:

function sheetName() {
  return SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getName();
}

En una celda donde desea agregar el nombre de la hoja:

=sheetName()

Hubo un problema al acceder a los nombres de las hojas a través de las funciones de la API que se muestran a continuación, donde solo devolvió el nombre de la primera hoja. Esto se solucionó en marzo de 2015 .


¿Podría ampliar su respuesta para aquellos de nosotros que no estamos familiarizados con la herramienta de script?
codingbadger

1
@Barry 1) Seleccione Herramientas-> Editor de secuencias de comandos 2) En el archivo de texto resultante, agregue esta función al final 3) Haga clic en guardar 4) Ahora puede usar esta función en su hoja.
gamliela

55
Si bien esta función funciona bien, no se actualiza cuando cambia el nombre de la hoja, por lo que no es realmente útil.
jesjimher

1
@jesjimher de acuerdo con este Foro de ayuda de Google Docs , si uno va al editor de guiones y vuelve a guardar el guión, volviendo a la hoja se ve que los nombres de las pestañas se actualizaron correctamente.
aribeiro

1
Lo sé, pero es confuso y totalmente opuesto a cómo funcionan las fórmulas de hoja. Espero que una fórmula se actualice cada vez que cambien sus datos de referencia. Ahora esta fórmula no hace eso a menos que abra y guarde el script de origen. Simplemente podría ingresar el nombre de la hoja a mano cada vez, ahorrando la molestia.
jesjimher

6

Aquí hay un fragmento de código de función personalizada para obtener un nombre de hoja de cálculo por su identificador .

function GetSpreadsheetNameById(id) {
  var ss = SpreadsheetApp.openById(id);
  return ss.getName();
}

En una celda, pase un identificador de hoja (busque en el URL de la hoja de cálculo el identificador).

=GetSpreadsheetNameById('49nvkwOE-203nXDLGGJtg0htFKK020dsd939AAPZU')

1
Esto es solo un ligero cambio en la respuesta anterior de @ user93341.
JamesThomasMoon1979

Esto da el siguiente error: "No tiene permiso para llamar a SpreadsheetApp.openById".
Aurovrata

Esto devuelve el nombre del documento en lugar del nombre de la hoja, en lugar de return ss.getName();por return ss.getActiveSheet().getName();si desea escuchar el nombre de la hoja (que en realidad necesitaba el nombre del documento, por lo que gracias)
Emilien

-1

Prueba esto:

function getNameOfThisSheet() {
  return SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getName();
}

Péguelo en Herramientas> Editor de secuencias de comandos y llame a la función desde una celda como esta:

=getNameOfThisSheet(NOW())

La NOW()ex GoogleClock(), parámetro ayuda Evitar en caso de problemas memoization.


GOOGLECLOCK () fue reemplazado por NOW () por otra parte, las funciones no deterministas no pueden usarse como argumentos de funciones personalizadas.
Rubén
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.