Mi hoja de Google tiene una celda en la sheet1 que contiene un enlace a una celda en la sheet2 . En mi función, puedo obtener la URL del enlace, pero no puedo averiguar cómo obtener un rango de rangeId :
var link = generatorSheet.getRange(currRow, 2) var linkUrl = link.getRichTextValue().getLinkUrl() Logger.log(linkUrl) // linkUrl = "rangeid=1843553975" Intenté usar getRangeByName y varias otras funciones, pero sigo obteniendo un valor nulo, no un objeto Range.
¡Gracias por adelantado!
Editar: mi objetivo general en esto es iterar sobre cada fila en la hoja 1, donde cada celda en la columna 2 se vincula a una celda en la hoja 2. Necesito tomar el valor de la celda en la hoja 2 y copiarlo en la hoja 3. En la hoja 1, hay una casilla de verificación en la columna 1 de cada fila, así que eso es lo que estoy usando para determinar si se copiará o no el valor vinculado. Tendré un botón para iniciar mi función y completar la hoja 3, y debe asumir que estos enlaces ya están en su lugar; se hicieron a mano antes
Cuando crea un hipervínculo a un rango utilizando la interfaz de usuario, se enfrenta a este problema . Creo que es posible que deba cambiar la forma de diseñar el hipervínculo e intentar definirlo mediante la fórmula.
=hyperlink("#gid=123456789&range=A2","go to ...")y luego recuperará el rango por
Logger.log(linkUrl.match(/(?<=range=).*/g))A efectos de documentación,
Este es un fragmento de hash de URL:
#rangeid=1843553975 La identificación parece haberse creado al insertar un enlace a un rango usando la interfaz de usuario. Esto es claramente diferente de un rango con nombre. Cuando se hace clic, se agrega a la URL en el navegador, es decir, https://docs.google.com/spreadsheets/id/edit#rangeid=1843553975 . Una vez agregado, a través del evento javascript onpopstate , el rango vinculado a la identificación se resalta en el navegador/aplicación.
NamedRanges tiene un flujo de trabajo similar. También proporciona un rangeid=<10 digit ID> . Pero, también tiene un nombre adjunto. Pero incluso en este caso, el ID de rango no se puede recuperar, aunque Sheets API proporciona un ID de rango ofuscado .
Hubo una solicitud de función realizada a Google, pero quedó obsoleta debido a la falta de respuesta por parte del solicitante:
Puede crear un nuevo problema similar allí con un enlace a esta respuesta. Una vez creado, vincula el problema aquí.
Otros rastreadores relacionados: