Fórmula genérica
=SUMAPRODUCTO(range*ISFORMULA(range))
Explicación
Para sumar resultados solo de fórmulas, puede usar las funciones SUMAPRODUCTO e ISFORMULA. En el ejemplo que se muestra, la fórmula en F6 es:
=SUMAPRODUCTO(sales*ISFORMULA(sales))
donde "ventas" es el rango con nombre C5: C13, los valores en C5: C9 están codificados y los valores en C10: C13 se generan con fórmulas.
Cómo funciona esta fórmula
Esta fórmula utiliza la lógica booleana para "filtrar" los números en la columna C antes de sumar con la función SUMAPRODUCTO. Cuando se evalúa la fórmula, los valores en el rango con nombre "ventas" se expanden en una matriz:
{925;1038;1105;1210;1250;1313;1379;1448;1520}
Para filtrar cualquier valor que no sea creado por una fórmula, la función ISFORMULA es crear una matriz de valores VERDADERO FALSO como este:
=ISFORMULA(sales) ={FALSO;FALSO;FALSO;FALSO;FALSO;VERDADERO;VERDADERO;VERDADERO;VERDADERO}
Cuando estas dos matrices se multiplican entre sí, la operación matemática obliga a los valores VERDADERO y FALSO a 1 y 0:
=SUMAPRODUCTO({925;1038;1105;1210;1250;1313;1379;1448;1520}*{0;0;0;0;0;1;1;1;1}) =SUMAPRODUCTO({0;0;0;0;0;1313;1379;1448;1520})
Los ceros cancelan los resultados que no son de fórmula, y SUMAPRODUCTO suma y devuelve un resultado final.
No fórmulas
Para sumar valores no generados por una fórmula, puede agregar la función NO como esta:
=SUMAPRODUCTO(sales*NO(ISFORMULA(sales)))
Aquí, la función NO invierte los resultados VERDADERO FALSO devueltos por la función ISFORMULA, que filtra los valores generados con una fórmula.
0 comentarios:
Publicar un comentario