Una secuencia de comandos está vinculada a un archivo de Hojas de cálculo, Documentos, Presentaciones o Formularios de Google si se creó a partir de ese documento en lugar de como una secuencia de comandos independiente. El archivo al que se adjunta una secuencia de comandos vinculada se denomina “contenedor”. Por lo general, las secuencias de comandos vinculadas se comportan como secuencias de comandos independientes, excepto que no aparecen en Google Drive, no se pueden separar del archivo al que están vinculadas y obtienen algunos privilegios especiales sobre el archivo superior.
Ten en cuenta que las secuencias de comandos también se pueden vincular a Google Sites, pero estas secuencias casi siempre se implementan como aplicaciones web. Las secuencias de comandos vinculadas a Hojas de cálculo, Documentos, Presentaciones o Formularios de Google también pueden convertirse en aplicaciones web, aunque esto es poco común.
Crea una secuencia de comandos vinculada
Documentos, Hojas de cálculo o Presentaciones de Google
Para crear una secuencia de comandos vinculada en Documentos, Hojas de cálculo o Presentaciones de Google, abre un archivo en Documentos, Hojas de cálculo o Presentaciones, y haz clic en Extensiones > Apps Script. Para volver a abrir la secuencia de comandos en el futuro, haz lo mismo o ábrela desde el panel de Apps Script.
Formularios de Google
Para crear una secuencia de comandos vinculada en Formularios de Google, abre un formulario y haz clic en Más > Editor de secuencias de comandos. Para volver a abrir la secuencia de comandos en el futuro, haz lo mismo o ábrela desde el panel de Apps Script.
Métodos especiales
Las secuencias de comandos vinculadas pueden llamar a algunos métodos que las secuencias de comandos independientes no pueden:
getActiveSpreadsheet()
,getActiveDocument()
,getActivePresentation()
ygetActiveForm()
permiten que las secuencias de comandos vinculadas hagan referencia a su archivo superior sin hacer referencia al ID del archivo.getUi
permite que las secuencias de comandos vinculadas accedan a la interfaz de usuario de su archivo superior para agregar menús, diálogos y barras laterales personalizados.- En Hojas de cálculo de Google,
getActiveSheet()
,getActiveRange()
ygetActiveCell()
permiten que la secuencia de comandos determine la hoja actual del usuario, el rango de celdas seleccionado o la celda individual seleccionada.setActiveSheet(sheet)
ysetActiveRange(range)
permiten que la secuencia de comandos cambie esas selecciones. - En Documentos de Google,
getCursor()
ygetSelection()
permiten que la secuencia de comandos determine la posición del cursor del usuario o del texto seleccionado.setCursor(position)
ysetSelection(range)
permiten que la secuencia de comandos cambie esas ubicaciones.
Si quieres obtener más información, consulta la guía para extender Hojas de cálculo de Google o la guía para extender Documentos de Google.
Menús, diálogos y barras laterales personalizados
Las secuencias de comandos vinculadas pueden personalizar Hojas de cálculo, Documentos y Formularios de Google si se agregan menús personalizados y cuadros de diálogo o barras laterales. Sin embargo, ten en cuenta que una secuencia de comandos solo puede interactuar con la interfaz de usuario de la instancia actual de un archivo abierto. Es decir, una secuencia de comandos vinculada a un documento no puede afectar la interfaz de usuario de otro documento.
Complementos
Los complementos se ejecutan en Gmail, Hojas de cálculo de Google, Documentos, Presentaciones y Formularios de Google. Si desarrollaste una secuencia de comandos vinculada o independiente y quieres compartirla con el mundo, Apps Script te permite publish la secuencia de comandos como un complemento para que otros usuarios puedan instalarla desde la tienda de complementos.
Activadores
Las secuencias de comandos vinculadas pueden usar activadores simples como la función especial onOpen()
, que se ejecuta de forma automática cada vez que un usuario con acceso de edición abre un archivo. Al igual que todos los tipos de secuencias de comandos, también pueden usar activadores instalables.
Funciones personalizadas
Una función personalizada es una función en una secuencia de comandos vinculada a Hojas de cálculo de Google que llamas directamente desde una celda con la sintaxis =myFunctionName()
. Por lo tanto, las funciones personalizadas son similares a los cientos de funciones integradas en Hojas de cálculo, como AVERAGE
o SUM
, excepto que tú defines el comportamiento de la función personalizada.
Acceso a secuencias de comandos vinculadas
Solo los usuarios que tienen permiso para editar un contenedor pueden ejecutar su secuencia de comandos vinculada. Los colaboradores que solo tienen acceso de lectura no pueden abrir el editor de secuencia de comandos, aunque, si hacen una copia del archivo contenedor, se convierten en propietarios de la copia y pueden ver y ejecutar una copia de la secuencia de comandos.
Para aprender a compartir el archivo contenedor de una secuencia de comandos, consulta Cómo compartir archivos desde Google Drive.