Ir al contenido principal

Escribir respuestas de formulario a hoja de cálculo de Google

Aplicación web que agrega una fila a una hoja de cálculo con los valores obtenidos por medio de un formulario HTML.

NOTA: Publicado originalmente aquí por mi mismo.

Referencias
Actualización 16 de agosto de 2018

Este este uno de los artículos con más visitas en mi antiguo sitio Ejemplos para Foros. El código incluido abajo es una adaptación de código en la respuesta al segundo enlace , básicamente una adaptación al español con la finalidad de compartirlo en el foro de ayuda de Google Drive.

Consta de dos archivos, uno para código del lado del servidor Código.gs y otro para código del lado del cliente inicio.html. Pueden agregarse a un proyecto de Apps Script independiente el cual deberá ser publicado como aplicación web. Requiere contar con el id de una Hoja de Cálculo de Google (HCG) que corresponda a al archivo al cual se desean enviar los datos.

Esto tiene sentido para quienes saben hacer formularios HTML/CSS/JavaScript y que los formularios de Google no incluyen características deseadas como podrían ser listas desplegables dependientes, cálculos antes de realizar el envío entre otras cosas.

Entradas más populares de este blog

Marca temporal (timestamp) en Hojas de Cálculo de Google

NOTA: Esto fue publicado originalmente aquí . Una de las preguntas más recurrentes (PP.FF. / FAQ) es acerca de cómo insertar una marca temporal (timestamp). En ocasiones, en la pregunta se menciona la función AHORA(), en inglés NOW() . Pero esta se actualiza cada vez que se recalcula la hoja de cálculo por lo que no es útil como indicador de cuando se realizó alguna acción. En su lugar hay varias alternativas Alternativas: 1) Usar una combinación de teclas. Lamentablemente este no funciona en todos los equipos debido a los diferentes tipos de teclados. 2) Usar Google Apps Script. Sobre las anteriores opciones hay varios hilos en el foro de Google Drive y los editores de documentos de Google .  Algunos de los que he encontrado buscando "timestamp": Imprimir hora automáticamente - Foros de productos de Google Para que formula con Now, se ejecute solo una vez. - Foros de productos de Google Almacenamiento de fecha en una celda sin recalculo o dependenc

Cómo obtener el key o id de una HCG

A diferencia de otras plataformas Google Drive y los editores de documentos de Google, en lugar de usar rutas y nombres de archivo, utilizan identificadores únicos comúnmente referidos como id o key . Por ejemplo, la función IMPORTRANGE puede usar el URL o el key de una Hoja de Cálculo de Google (HCG) como primer parámetro. Por ser más corto, resulta más conveniente usar key / id   en lugar del URL. Otro caso de uso en el que se ocupa el  key / id   es al incluir en una secuencia de comandos el método SpreadsheetApp.openById(id) de Google Apps Script. La forma más directa de obtener el id de una HCG es abrirla en el navegador de escritorio y tomarlo directamente de la barra de direcciones. La dirección mostrada en la imagen superior es la siguiente: https://docs.google.com/spreadsheets/d/1ZxHlZjiqjdWoZrPIEFLX2niRkOfVBCWC0I2uzGsek_o/edit#gid=319387801 En la imagen superior, el key corresponde al texto resaltado, nótese que se encuentra entre /d/ y /edit, el cual es el

¿Qué es __xludf.DUMMYFUNCTION?

Resumen __xludf.DUMMYFUNCTION es una función de las Hojas de Cálculo de Google agregada al descargar una hoja de cálculo en formato Microsoft Excel (.xlsx) a las fórmulas que utilizan funciones no compatibles. He descargado mi hoja de cálculo y veo __xludf.DUMMYFUNCTION ¿Qué es? ¿Por qué Google modificó mis fórmulas? Si usas funciones de Hojas de Cálculo de Google (HCG) que no son compatibles con Microsoft Excel (Excel) como IMPORTRANGE y descargas una hoja de cálculo como Microsoft Excel (.xlsx) podrías haber visto que las fórmulas originales fueron modificadas para incluir  =IFERROR(__xludf.DUMMYFUNCTION(tu_formula),"valor") (funciones en inglés) =SI.ERROR(__xludf.DUMMYFUNCTION(tu_formula),"valor") (funciones en español) o bien =IFERROR(__xludf.DUMMYFUNCTION("""COMPUTED_VALUE"""),"valor") (funciones en inglés) =SI.ERROR(__xludf.DUMMYFUNCTION("""COMPUTED_VALUE"""),"v