Función ARRAYFORMULA en hojas de cálculo de Google

caCatalà (Catalán) enEnglish (Inglés)

Creo sinceramente que las hojas de cálculo son una de las herramientas más útiles para maestros y profesores. Lo he dicho más de una vez y, para mí, dominarlas debería ser una de las competencias digitales de un docente. Es cierto que en este blog no les he dedicado mucho artículos. Hace un par de años dediqué uno a la fórmula IMPORTRANGE. Hoy hablaré de otra fórmula que también nos puede ser muy útil, ARRAYFORMULA. Es especialmente útil cuando trabajamos con hojas de cálculo donde se recogen respuestas de formularios de Google.

Imaginemos que queremos tener una hoja de cálculo con algunos datos de los alumnos (nombre, apellido, número de hermanos …). Con los formularios de Google es muy sencillo. Creamos el formulario, enviamos el enlace a los alumnos y ellos mismos contestan.

Una vez los alumnos han contestado, podemos abrir el formulario en modo edición y, en el apartado Respuestas, podemos crear la hoja de cálculo.

Se abrirá una hoja de cálculo con todas las respuestas de los alumnos.

Supongamos ahora que queramos trabajar un poco con estos datos. Por ejemplo, queremos hacer algo tan sencillo como añadir un campo donde el nombre y el apellido estén juntos. Vamos a la primera columna libre y utilizamos la siguiente fórmula:

=B2 & ” ” & C2

Efectivamente, nos aparece el nombre y el apellido en un única celda.

Si queremos que este campo esté para todos los alumnos, tendremos que copiar la fórmula a todos los alumnos. Ningún problema.

Pero, ¿qué pasará si algún alumno contesta el formulario tarde? Se podría pensar que basta con copiar la fórmula en toda la columna E y así ya lo tenemos listo para cualquier número de respuestas. Pero no es así.

Cuando se responde un formulario, Google inserta una fila nueva al final de la última respuesta y, por tanto, no respeta ninguna fórmula (ni formato) que hubiéramos previsto. Si se responde el formulario después de haber copiado la fórmula, aparecerá de la siguiente forma.

O sea, habría que volver a copiar y pegar la fórmula. ¿Como lo podemos hacer para tener la hoja preparada y que cuando los alumnos contestan no haya que ir copiando fórmulas?

Una opción es usar un complemento para hojas de cálculos que se llama copyDown. Es una opción, pero en muchos casos, hay una solución más simple. Utilizar la fórmula ARRAYFORMULA.

Esta fórmula convierte una fórmula que devuelve un valor (en nuestro caso el nombre y el apellido juntos) en una fórmula que devuelve muchos valores. O sea, que con una sola fórmula en el primer alumno, ya tendremos el campo para todos.

Sólo habría que poner la siguiente fórmula:

=ARRAYFORMULA(B2:B & ” ” & C2:C)

Se puede ver que la fórmula es la misma que habíamos introducido, pero cambiando los valores (B2 y C2) por los rangos (B2: B y C2: C). La fórmual ARRAYFORMULA indica a la hoja que tome todos los valores que hay en el rango B2: B (desde B2 hasta el final de la columna B2) y aplique la fórmula.

Para que nos funcione, deberemos eliminar las fórmulas que habíamos copiado, ya que sino la hoja se quejará que se sobrescribirán celdas.

En esta versión,, sólo hay una sola fórmula en la celda E2. Por lo tanto, si ahora se contesta el formulario, no será necesario tocar nada y todo seguirá funcionando.

Aunque no se utilicen formularios, la fórmula también es muy útil para ahorrarnos trabajo. Con un sola fórmula ya nos funciona, sin tener que copiar y pegar fórmulas.

Para usuarios avanzados, esta fórmula se puede combinar con otros COUNTIF, AVERAGE, VLOOKUP, IMPORTRANGE … Eso sí, no es compatible con todas. Por ejemplo, no funciona ni con FILTER ni con QUERY.

caCatalà (Catalán) enEnglish (Inglés)

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.