Cómo usar un AND o OR lógico en una instrucción SUM+IF en Excel

Resumen

En Microsoft Excel, cuando se usan las funciones lógicas AND o OR dentro de una instrucción SUM+IF para probar un intervalo para más de una condición, es posible que no funcione según lo esperado. Una instrucción IF anidada proporciona esta funcionalidad; sin embargo, en este artículo describe un segundo método más sencillo que usa las fórmulas siguientes.

For AND Conditions

=SUM(IF(Test1*Test2*...*Testn))

For OR Conditions

=SUM(IF(Test1+Test2+...+Testn))

Más información

Use una instrucción SUM+IF para contar el número de celdas de un rango que superan una prueba determinada o para sumar esos valores en un rango para el que los valores correspondientes de otro rango (o el mismo) cumplan los criterios especificados. Esto se comporta de forma similar a la función DSUM de Microsoft Excel.

Ejemplo

En este ejemplo se cuenta el número de valores del intervalo A1:A10 que se encuentran entre 1 y 10, inclusive.

Para ello, puede usar la siguiente instrucción IF anidada:

=SUM(IF(A1:A10>=1,IF(A1:A10<=10,1,0)))

El método siguiente también funciona y es mucho más fácil de leer si está realizando varias pruebas:

=SUM(IF((A1:A10>=1)*(A1:A10<=10),1,0))

El método siguiente cuenta el número de fechas que se encuentran entre dos fechas determinadas:

=SUM(IF((A1:A10>=DATEVALUE("1/10/99"))*(A1:A10<=DATEVALUE("2/10/99")),1,0))

Nota:

  • Debe escribir estas fórmulas como fórmulas de matriz presionando CTRL+MAYÚS+ENTER simultáneamente. En Macintosh, presione COMMAND+RETURN en su lugar.
  • Las matrices no pueden hacer referencia a columnas enteras.

Con este método, va a multiplicar los resultados de una prueba lógica por otra prueba lógica para devolver TRUE y FALSE a la función SUM. Puede igualarlos a:

TRUE*TRUE=1
TRUE*FALSE=0
FALSE*TRUE=0
FALSE*FALSE=0

El método mostrado arriba cuenta el número de celdas del rango A1:A10 para el que ambas pruebas obtienen TRUE. Para sumar valores en las celdas correspondientes (por ejemplo, B1:B10), modifique la fórmula como se muestra a continuación:

=SUM(IF((A1:A10>=1)*(A1:A10<=10),B1:B10,0))

Puede implementar un OR en una SUM+IF instrucción de igual forma. Para ello, modifique la fórmula que se muestra arriba reemplazando el signo de multiplicación (*) por un signo más (+). Esto proporciona la siguiente fórmula genérica:

=SUM(IF((Test1)+(Test2)+...+(Testn),1,0))

Referencias

Para obtener más información sobre cómo calcular un valor basado en una condición, haga clic en Ayuda de Microsoft Excel en el menú Ayuda, escriba algo sobre calcular un valor basado en una condición en el asistente de Office o en el asistente para ayuda y, a continuación, haga clic en Buscar para ver el tema.