usando una fórmula and() con una declaración if en una fórmula matricial en Excel

usando una fórmula and() con una declaración if en una fórmula matricial en Excel

Bien, tengo una lista de devoluciones de clientes en una hoja de cálculo. Cada cliente también tiene una categoría de riesgo asignada al ( riskyo safe) y al socio asignado a ellos ( P1o P2).

Aquí está un ejemplo de diseño.

  A           B          C            D
Client  |  Return  |  RiskCat  |  Partner
_________________________________________
John       1.5%       risky       P2
Bill       1.8%       risky       P1
Tim        1.2%       safe        P2
Bob        1.4%       risky       P1
Kate       2.1%       risky       P2
Fred       0.8%       safe        P1
...etc

He escrito una medianif()función " " que calcula la mediana de los rendimientos en un criterio determinado (por ejemplo, la categoría de riesgo). Entonces, por ejemplo, si quisiera encontrar la mediana de los rendimientos en la categoría de riesgo, haría:

=median(if(C:C="risky",B:B,""))

Y presione ctrl-shift-enter para ingresarlo como una fórmula matricial en la celda.

Del mismo modo, para encontrar la mediana de los rendimientos de aquellos que tienen a P1 como socio, haría:

=median(if(D:D="P1",B:B,""))

Las dos fórmulas anteriores funcionan para mí, pero dicen que quería encontrar la mediana de los rendimientos para la categoría de riesgo Y el socio P1. Bueno, lo intento:

=median(if(and(C:C="risky",D:D="P1"),B:B,""))

Lamentablemente, esto no funciona y aparece un error #value. ¿Es posible utilizar AND() de esta manera y, de no ser así, cómo lograría lo que busco?

Respuesta1

No, no puedes usar AND u OR de esta manera porque esas funciones devuelven un único resultado en lugar de una matriz. Debe utilizar * en lugar de AND....o varios IF, por ejemplo,

=MEDIAN(IF((C:C="risky")*(D:D="P1"),B:B))

o

=MEDIAN(IF(C:C="risky",IF(D:D="P1",B:B)))

este último es posiblemente marginalmente más eficiente

información relacionada