miércoles, 1 de mayo de 2019

Referencia a la última entrada desde un formulario

En el caso que queremos calcular algo mediante código cuando alguien manda un formulario, nuestra primera idea es conseguir los datos de dicha última contestación apelando a la última fila de los datos que se almacenan en la pestaña "Respuestas de formulario", entendiendo que en dicha última fila se van a almacenar los datos de esta última contestación.

Repito a propósito la palabra ULTIMA, ya que hay situaciones que Google no funciona así. Suele pasar, cuando borramos o hacemos alguna otra operación en esta pestaña, que Google empieza a almacenar las contestaciones, NO en la ULTIMA fila, sino en filas intercaladas entre los datos anteriores.

Por lo tanto, ya no podemos fiarnos de utilizar getLastRow() para conseguir el dato más reciente.

Una solución es aprovechar la columna de marca temporal y conseguir la fila del registro que tenga la marca temporal mas reciente, osea la última contestación mandada.

Esto lo podemos conseguir con una fórmula como esta:
=filter(row('Respuestas de formulario'!F:F);'Respuestas de formulario'!A:A=max('Respuestas de formulario'!A:A)) 

La clave está en filtrar la fila (row) que en la columna de la marca temporal (normalmente la A) coincida con la fecha máxima (max) de dicha marca, o lo que es lo mismo, la fecha más reciente.

No hay comentarios:

Publicar un comentario

Crear PDF horizontal

El código que vamos a mostrar aquí no ha sido creado por nosotros, sino que lo hemos encontrado en Internet. Objetivo: Publicar una pesta...