Cómo crear desplegables condicionales en Google Forms con Sheets y Apps Script

En este tutorial te voy a mostrar cómo crear desplegables condicionales en Google Forms usando Google Sheets y Google Apps Script. Esta es una de las preguntas que más recibo y, aunque Google Forms no tiene esta funcionalidad de forma nativa, existe un truco que podemos aprovechar para lograrlo, especialmente cuando no tienes cientos de opciones. Si tienes, por ejemplo, 10 categorías y cada una tiene 3 o 4 subcategorías, este método te puede funcionar perfectamente. Además, te voy a enseñar cómo automatizar la creación y actualización del formulario para que las respuestas sean mucho más fáciles de manejar en tu hoja de cálculo.

Si prefieres ver el tutorial en video, aquí te lo dejo a continuación:

¿Qué queremos lograr con desplegables condicionales en Google Forms?

La idea es que el usuario seleccione una opción de un primer desplegable (por ejemplo, un país, una banda de rock, o una categoría de producto) y, dependiendo de esa selección, se le muestre una segunda pregunta con opciones específicas (por ejemplo, ciudades de ese país, álbumes de esa banda, o productos de esa categoría). Todo esto lo vamos a automatizar desde Google Sheets usando un script para que sea fácil de actualizar y mantener.

¿Por qué no se puede hacer directamente en Google Forms?

De manera nativa, Google Forms no permite desplegables condicionales. Es decir, no puedes hacer que la selección de una opción en una pregunta determine las opciones de la siguiente pregunta de forma dinámica. Sin embargo, existe un truco: usar secciones y la opción de “ir a la sección según la respuesta”. Así, podemos simular este comportamiento creando una sección para cada categoría y mostrando las subopciones correspondientes. El reto está en que hacerlo manualmente es muy tedioso y difícil de mantener si cambian tus datos. Por eso, lo vamos a automatizar.

¿Cómo funciona la solución?

Vamos a tener nuestros datos organizados en una hoja de cálculo de Google Sheets, por ejemplo:

BandaÁlbum
Foo FightersThe Colour and the Shape
Foo FightersWasting Light
WeezerBlue Album
WeezerPinkerton

El script de Apps Script va a leer estas opciones y va a crear automáticamente:

  • Una pregunta inicial (por ejemplo: “¿Qué banda quieres?”).
  • Una sección para cada banda (o categoría).
  • Una pregunta por sección con las subopciones correspondientes (por ejemplo, los álbumes de la banda seleccionada).
  • La lógica para que al seleccionar una banda, el formulario lleve a la sección correcta.
  • Al final, las respuestas llegarán limpias, solo con “Banda” y “Álbum”, sin columnas innecesarias.

Construcción manual: para entender la lógica

Antes de automatizar, te muestro cómo sería hacerlo manualmente en Google Forms:

  • Crea un formulario y agrega una pregunta tipo opción múltiple (por ejemplo: “¿Qué banda?”) con las opciones que quieras.
  • Agrega una sección por cada banda (o categoría).
  • En cada sección, agrega una pregunta para las subopciones (por ejemplo: “Álbum de Foo Fighters”).
  • Configura la pregunta inicial para que “vaya a la sección según la respuesta”.
  • En cada sección, al finalizar, selecciona “enviar formulario” para que no pase a otra sección.

El problema de este método es que, si tienes muchas opciones o necesitas actualizar los datos, se vuelve inmanejable y las respuestas se llenan de columnas innecesarias. Por eso, vamos a automatizarlo.

Automatizando con Google Apps Script

Ahora sí, vamos a construir el script paso a paso. El código lo vamos a escribir directamente desde Google Sheets, porque así podemos leer fácilmente nuestros datos y actualizar el formulario con un solo clic.

Estructura del script (pseudoalgoritmo)

  • Conexiones e inicializaciones: conectarse al formulario y al Google Sheets.
  • Resetear el formulario: borrar todas las preguntas y secciones existentes.
  • Alistar y organizar los datos desde Sheets.
  • Crear la pregunta principal (categoría).
  • Crear una sección y pregunta para cada subcategoría.
  • Configurar la lógica de navegación: “ir a la sección según la respuesta”.
  • Optimizar para que las respuestas lleguen limpias y ordenadas.

Conectando con Google Forms y Google Sheets

Lo primero es conectarse con el formulario y la hoja de cálculo. Para el formulario, puedes usar FormApp.openByUrl() y pegar la URL de tu formulario en modo edición. Para el Sheets, como estamos trabajando desde el mismo archivo, puedes usar SpreadsheetApp.getActiveSpreadsheet().

Aquí te dejo el código completo

Conclusión y próximos pasos

Como viste, aunque Google Forms no tiene desplegables condicionales de forma nativa, con un poco de creatividad y la ayuda de Google Apps Script podemos lograrlo y automatizar el proceso para mantenerlo siempre actualizado y ordenado. Este método te ahorra mucho tiempo, especialmente si tienes que actualizar frecuentemente tus opciones. Si quieres el código completo, la plantilla y soporte, te invito a unirte a mi academia.

Si quieres aprender a usar Google Forms y Google Sheets desde cero, te invito a tomar un curso gratis de 2 horas.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

JuanSGuzman
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.