Función SUBTOTALES

Por el equipo editorial de LogicExcelActualizado en junio de 20263 min de lectura564 palabras

SUBTOTALES ejecuta uno de once cálculos de agregación (SUMA, PROMEDIO, CONTAR, MAX, etc.) sobre un rango, con un detalle importante: puede ignorar las filas ocultas por un filtro. Por eso el total al final de una lista filtrada casi siempre debería ser un SUBTOTALES y no un SUMA. Además, se salta otros resultados de SUBTOTALES dentro del rango, así que los totales anidados nunca se cuentan dos veces.

Sintaxis

=SUBTOTALES(núm_función; ref1; [ref2]; ...)
  • núm_función: un código (ver la tabla) que elige el cálculo y si se ignoran las filas ocultas.
  • ref1, ref2, ...: los rangos que quieres agregar.

Números de función

Cada cálculo tiene dos códigos. La versión 1-11 ignora solo las filas eliminadas por un filtro. La versión 101-111 ignora además las filas que ocultas a mano.

CálculoIncluye las ocultas a manoIgnora las ocultas a mano
PROMEDIO1101
CONTAR2102
CONTARA3103
MAX4104
MIN5105
PRODUCTO6106
DESVEST7107
SUMA9109
VAR10110
Los dos grupos de códigos ignoran las filas eliminadas por un filtro. La diferencia está solo en las filas que ocultas a mano.

Sumar una lista filtrada

Con números en C2:C100:

=SUBTOTALES(9; C2:C100)

Aplica un filtro a la lista y el total refleja al instante solo las filas visibles. Un =SUMA(C2:C100) normal seguiría contando las filas filtradas.

Contar las filas visibles

=SUBTOTALES(3; C2:C100)

La función 3 (CONTARA) cuenta las celdas visibles no vacías y te da un recuento en vivo de los resultados filtrados.

Ignorar también las filas ocultas a mano

Si ocultas filas con el clic derecho y Ocultar (no con un filtro), cambia al código de la serie 100 para excluirlas también:

=SUBTOTALES(109; C2:C100)

Problemas habituales

  • El total no cambia al filtrar. Usaste SUMA, no SUBTOTALES. Solo SUBTOTALES (y AGREGAR) responden al filtrado.
  • Las filas ocultas a mano siguen contando. Usaste un código del 1 al 11. Usa la versión 101-111 (por ejemplo, 109 en lugar de 9) para descartar las ocultas a mano.
  • Los subtotales anidados parecen mal. En realidad no lo están: SUBTOTALES ignora a propósito otras celdas con SUBTOTALES dentro de su rango, así que un total general de subtotales no duplica nada.

SUBTOTALES frente a AGREGAR

AGREGAR es una función más moderna que hace todo lo que hace SUBTOTALES y además puede ignorar los valores de error, cosa que SUBTOTALES no puede. Si tu rango puede contener errores, =AGREGAR(9; 7; C2:C100) suma las filas visibles saltándose los errores. Para totales filtrados normales, SUBTOTALES es más sencilla y funciona en todas las versiones.

Preguntas frecuentes

¿Qué hace la función SUBTOTALES?

SUBTOTALES realiza el cálculo que elijas (suma, promedio, cuenta y otros) sobre un rango ignorando las filas ocultas por un filtro. Es la función correcta para un total que debe reflejar solo las filas visibles en ese momento.

¿Cuál es la diferencia entre SUBTOTALES 9 y 109?

Ambos ignoran las filas eliminadas por un filtro. El código 9 sigue incluyendo las filas que ocultaste a mano; el 109 también las ignora. Usa el 109 cuando ocultes filas manualmente y quieras dejarlas fuera del total.

¿Por qué usar SUBTOTALES en lugar de SUMA?

SUMA siempre suma todas las celdas del rango, incluso las ocultas por un filtro, así que una vista filtrada muestra un total que incluye filas que no ves. SUBTOTALES con la función 9 se recalcula para incluir solo las filas visibles.

¿SUBTOTALES ignora otros subtotales del rango?

Sí. SUBTOTALES se salta cualquier otro resultado de SUBTOTALES dentro de su rango, así que puedes repartir subtotales por grupos a lo largo de una lista y poner un SUBTOTALES general al final sin contar nada dos veces.

Sigue adelante

Te indica qué leer a continuación.