Agregar id o consecutivo de manera automática a las respuestas capturadas de un formulario

En esta ocasión les voy a mostrar como agregar un id o numero consecutivo a las respuestas capturadas en un formulario. Para este post voy a partir de la suposición de que ya saben que es un formulario de Google, para que sirve y como se vincula con una hoja de calculo para tener a la mano los datos colectados por medio del formulario.

Veamos la siguiente consulta que me han realizado:

"Tengo una hoja de cálculo donde llegan los resultados de un formulario donde usuarios entran y registran una solicitud. Necesito que al enviar el formulario se genere un folio único. Como puedo automatizar una formula se este copiando y corriendo hacia abajo de manera automática?"


Para  los que ya han trabajado con formularios sabrán que no se puede tener formulada una columna sobre la pestaña de respuestas del formulario, ya que si ese es el caso al enviarse una nueva respuesta se inserta una nueva y se borraran las formulas existentes teniendo que copiar o arrastrar la formula a la fila recién insertada.

Para poder resolver el problema anterior se tienen dos opciones:
  1. Se hace uso de Google Apps Script y un activador para poder insertar la formula en la nueva fila.
  2. Se hace uso de una formula matricial que haga el calculo sobre las respuestas vaciadas del formulario a la hoja de cálculo.
Supongamos que queremos un id consecutivo en la columna A de nuestra hoja de respuestas. Una formula de obtenerlo es de la siguiente manera:
=ARRAYFORMULA(SI(B2:B<>"",FILA(A2:A)-1,""))

Evaluamos todo el contenido de B2 en adelante (B2:B) para ver si es diferente a una cadena no vacía, si ese es el caso obtenemos el numero de fila de A2 en adelante (A2:A) y le restamos uno para obtener un consecutivo que inicie desde uno en caso contrario ponemos una cadena vacía, La formula anterior estará funcionando sin importar cuantas nuevas respuestas del formulario se envíen y sin necesidad de haber programado en lo absoluto, simplemente haciendo uso de una formula matricial (ARRAYFORMULA). No solamente pueden asignarse ID's por este medio, sino que pueden realizarse cálculos sobre cierta columna de las respuestas enviadas y este siempre se efectuara con cada nueva respuesta. 

Hay una posible desventaja de hacer uso de formulas matriciales y es que no debemos hacer abuso de ellas y me refiero en el aspecto de que si tenemos una hoja con demasiadas filas y tenemos una formula matricial que haga referencia a todas las filas y no hay datos en la gran mayoría, se esta poniendo a trabajar en vano a Sheets, una forma de evitar esto es eliminar todas las filas en blanco que no se utilicen.

Para ejemplificar lo anterior les comparto los enlaces al formulario y la hoja de calculo:

Al igual que les dejo el vídeo de ejemplo y explicación:



Comentarios

  1. Hola buenos días, si quisiera borrar una fila específica, como lo hago para eliminarla (no solo el dato alojado en ella). Muchas gracias.

    ResponderBorrar
    Respuestas
    1. Hola JEVG! Me parece que falta mayor detalle en tu consulta y no directamente esta relacionada con el post.

      Te sugiero que realices tu consulta con mayor detalle en la siguiente url donde yo o alguno de mis colegas trataremos de ayudarte:
      https://support.google.com/docs/thread/new?hl=es

      Borrar
  2. muchas gracias, fue muy útil

    ResponderBorrar
  3. hola y como lo puedo programa es mi formula en el scrip

    ResponderBorrar
    Respuestas
    1. Lo siento pero no queda claro que es lo que necesitas!

      Borrar

Publicar un comentario