Estoy intentando promediar una celda donde puede aparecer #N/A, 0, #NUM. Quiero escribir un código para promediar todo el valor de la celda cuando sea menor que el valor de la celda J24 y mayor que el valor de la celda J25.
He probado AVERAGEIF(J2:J21,AND(">="&J25","<="&J24"),J2:J21)
este código. Pero recibo el error #DIV/0. Si alguien tiene alguna idea de cómo solucionar el problema, sería de gran ayuda.
Gracias
Respuesta1
Probablemente #DIV/0
se deba a referencias de rango incorrectas. Escribe sobre la columna B, pero su fórmula se refiere a la columna J.
Para obtener una fórmula para la columna J que ignore los errores, puede intentar:
=AVERAGE(IF(ISNUMBER(1/((J2:J21>J24)*(J2:J21<J25))),J2:J21))
Esto aprovecha el hecho de que la AVERAGE
función ignorará los booleanos.
Respuesta2
Esto resuelve el problema:
Cómo funciona:
Una fórmula matricial (CSE) en la celda M70:
{=IF(ISNUMBER(M61:M69),AVERAGEIFS(M61:M69,M61:M69,">="&L61,M61:M69,"<="&L62),0)}
NÓTESE BIEN
Termina la fórmula conCtrl+Mayús+Entrar.
Operador
>=
y<=
cubre cualquier número entre 10 y 25.Si usas
>
&<
entonces salta 10.
Ajuste las referencias de celda en la fórmula según sea necesario.