Errores en fórmulas matriciales en Google Sheets y cómo evitarlos

Hoy te voy a mostrar cómo manejar errores en fórmulas matriciales en Google Sheets, especialmente cuando algunas funciones como SUMA, PROMEDIO y SUMAR.SI no se comportan como esperamos al usarlas con ArrayFormula. Este tema es clave si trabajas mucho desde el celular, porque en Android a veces las fórmulas matriciales fallan o arrojan errores raros. Además, te compartiré trucos para que tus fórmulas funcionen bien tanto en computador como en dispositivos móviles, y cómo evitar los errores más comunes para que no te enredes con los resultados. ¡Vamos a ello!

Si prefieres verlo en video, te lo dejo a continuación para que sigas el paso a paso conmigo y veas los ejemplos en acción.

¿Por qué fallan las fórmulas matriciales en Google Sheets?

Lo primero que debes saber es que ArrayFormula te permite aplicar una fórmula a todo un rango de datos de una sola vez, ahorrándote tiempo y evitando copiar y pegar fórmulas fila por fila. Sin embargo, no todas las funciones de Sheets están diseñadas para trabajar de manera «matricial». Algunas, como SUMA y PROMEDIO, procesan todos los datos juntos y no entienden que quieres el cálculo fila por fila. Esto genera errores o resultados inesperados, sobre todo en móviles.

Cómo convertir SUMA en ArrayFormula (y evitar errores)

Supongamos que tienes estos datos y quieres sumar los valores de cada fila:

AB
23
45
67

La mayoría escribiría esto para la primera fila:

=SUMA(A2:B2)

Y luego copiaría hacia abajo. Pero si quieres hacerlo con ArrayFormula para todas las filas, podrías pensar en algo así:

=ARRAYFORMULA(SUMA(A2:A4;B2:B4))

¡Ojo! Esto suma todo el rango completo (2+4+6+3+5+7) y te da un solo número, no la suma por fila. Aquí es donde muchos se frustran y piensan que ArrayFormula no sirve. Pero la solución es más sencilla de lo que crees.

La solución real: suma directa con ArrayFormula

En vez de SUMA, usa el operador + dentro de ArrayFormula. Así:

=ARRAYFORMULA(A2:A4 + B2:B4)

Esto sí te da el resultado fila por fila: 5, 9, 13. Así puedes arrastrar la fórmula o dejar que se expanda automáticamente.

¿Y si tienes más de dos columnas?

Si tienes más columnas, puedes sumar varias así:

=ARRAYFORMULA(A2:A4 + B2:B4 + C2:C4)

Pero si tienes muchas columnas y no quieres escribirlas una por una, puedes usar MMULT o SUMAPRODUCTO. Por ejemplo, para sumar todas las columnas de la fila 2 a la 4:

=ARRAYFORMULA(MMULT(A2:C4;TRANSPOSE(SIGN(COLUMN(A2:C4)))))

Esto suma todas las columnas de cada fila, útil si tienes una tabla ancha y no quieres escribir columna por columna.

Convertir PROMEDIO en ArrayFormula (sin errores)

Ahora, si quieres el promedio por fila, el error es parecido. Si escribes:

=ARRAYFORMULA(PROMEDIO(A2:A4;B2:B4))

Te devuelve un solo número (el promedio de todos los datos juntos), no por fila. La solución es calcular el promedio manualmente:

=ARRAYFORMULA((A2:A4 + B2:B4) / 2)

Esto funciona si son dos columnas, pero si tienes más, simplemente suma todas las columnas y divide entre el número de columnas. Por ejemplo, para tres columnas:

=ARRAYFORMULA((A2:A4 + B2:B4 + C2:C4) / 3)

Y si tienes muchas columnas, puedes usar MMULT para la suma y CONTAR para saber cuántas columnas hay:

=ARRAYFORMULA(MMULT(A2:C4;TRANSPOSE(SIGN(COLUMN(A2:C4)))) / CONTAR(A2:C2))

SUMAR.SI y ArrayFormula: cómo hacerlo bien

Ahora imagina que tienes una tabla como esta:

A (Categoría)B (Año)C (Unidades)
Categoría 120235
Categoría 220237
Categoría 220248

Y quieres sumar todas las unidades de «Categoría 2». Lo típico sería:

=SUMAR.SI(A2:A4; "Categoría 2"; C2:C4)

Esto te da 15. Pero si quieres hacerlo «matricial», por ejemplo para varias categorías a la vez, puedes usar ArrayFormula de esta forma:

=ARRAYFORMULA(SI(A2:A4="Categoría 2"; C2:C4; 0))

Esto te devuelve una columna con los valores de C solo cuando la categoría es «Categoría 2», y 0 en los demás casos. Si quieres el total, simplemente envuelves la fórmula en SUMA:

=SUMA(ARRAYFORMULA(SI(A2:A4="Categoría 2"; C2:C4; 0)))

¿Y si quieres varios criterios a la vez? Puedes usar FILTRO con ArrayFormula. Por ejemplo:

=SUMA(FILTRO(C2:C4; A2:A4="Categoría 2"; B2:B4=2023))

Esto suma solo las unidades de «Categoría 2» y año 2023. Así puedes hacer cálculos mucho más flexibles.

Evita errores comunes y buenas prácticas

  • No combines funciones que no son matriciales con ArrayFormula: SUMA y PROMEDIO no funcionan fila por fila dentro de ArrayFormula.
  • Usa operadores matemáticos (+, -, *, /) dentro de ArrayFormula: Así logras cálculos fila por fila.
  • Para condiciones, usa SI o FILTRO: Así puedes sumar o promediar solo ciertos datos.
  • Si usas el celular, prueba tus fórmulas antes: En Android, algunas fórmulas pueden comportarse diferente. Si te da error, revisa si puedes simplificar la fórmula.

Te recomiendo también revisar el artículo sobre cómo usar la función FILTRO en Google Sheets, donde explico más a fondo cómo hacer filtros avanzados con fórmulas matriciales.

Conclusión

Las fórmulas matriciales en Google Sheets son súper poderosas, pero hay que saber cómo usarlas para evitar dolores de cabeza y errores, sobre todo si trabajas en móvil. Recuerda: usa operadores en vez de SUMA/PROMEDIO, apóyate en SI y FILTRO para condiciones, y prueba siempre tus fórmulas. Así tendrás hojas de cálculo más robustas y eficientes.

¿Quieres profundizar más? Te invito a mi curso Fórmulas Avanzadas en Google Sheets donde vemos estos y otros trucos para convertirte en un pro.

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.