Táboa de contidos
O titorial explica como usar as funcións COUNTIF e COUNTIFS de Excel para contar celas con varias condicións OU, por exemplo. se unha cela contén X, Y ou Z.
Como todo o mundo sabe, a función COUNTIF de Excel está deseñada para contar celas baseándose só nun criterio mentres que COUNTIFS avalía varios criterios coa lóxica AND. Pero que pasa se a túa tarefa require lóxica OU: cando se proporcionan varias condicións, calquera pode coincidir para incluírse no reconto?
Hai algunhas solucións posibles para esta tarefa e este tutorial cubriraas todas en todo detalle. Os exemplos implican que tes un bo coñecemento da sintaxe e dos usos xerais de ambas funcións. Se non é así, pode querer comezar coa revisión dos conceptos básicos:
Función de Excel COUNTIF: conta as celas cun criterio.
Función de Excel COUNTIFS: conta as celas con varios criterios AND.
Agora que todos están na mesma páxina, imos mergullarse en:
Contar celas con condicións OU en Excel
Esta sección abarca o escenario máis sinxelo: contar celas que cumprir calquera (polo menos unha) das condicións especificadas.
Fórmula 1. COUNTIF + COUNTIF
O xeito máis sinxelo de contar as celas que teñen un valor ou outro (Countif a ou b ) é escribir unha fórmula normal COUNTIF para contar cada elemento individualmente e, a continuación, engadir os resultados:
COUNTIF( rango, criterio1) + CONTARSE( intervalo, criterio2)Comoexemplo, descubramos cantas celas da columna A conteñen "mazás" ou "plátanos":
=COUNTIF(A:A, "apples") + COUNTIF(A:A, "bananas")
Nas follas de traballo da vida real, é unha boa práctica operar en intervalos en lugar de que columnas enteiras para que a fórmula funcione máis rápido. Para evitar o problema de actualizar a fórmula cada vez que cambian as condicións, escriba os elementos de interese nas celas predefinidas, digamos F1 e G1, e faga referencia a esas celas. Por exemplo:
=COUNTIF(A2:A10, F1) + COUNTIF(A2:A10, G1)
Esta técnica funciona ben para un par de criterios, pero engadir tres ou máis funcións COUNTIF faría que a fórmula sexa demasiado complicada. Neste caso, é mellor que te quedes cunha das seguintes alternativas.
Fórmula 2. COUNTIF con constante matricial
Aquí tes unha versión máis compacta da fórmula SUMIF con condicións OR en Excel:
SUMA(CONTARSE( intervalo, { criterio1, criterio2, criterio3, …}))A fórmula é construído deste xeito:
En primeiro lugar, empaqueta todas as condicións nunha constante matricial: elementos individuais separados por comas e a matriz encerrada en chaves como {"mazás", "plátanos", "limóns"}.
Entón, inclúe a constante de matriz no argumento criterio dunha fórmula normal COUNTIF: COUNTIF(A2:A10, {"apples","bananas","lemons"})
Finalmente, deforma a fórmula COUNTIF na función SUM. É necesario porque COUNTIF devolverá 3 contas individuais para "mazás", "plátanos" e"limóns", e cómpre sumar esas contas.
A nosa fórmula completa é a seguinte:
=SUM(COUNTIF(A2:A10,{"apples","bananas","lemons"}))
Se prefire proporcionar os seus criterios como referencias de intervalo , terá que introducir a fórmula con Ctrl + Maiús + Intro para que sexa unha fórmula matricial. Por exemplo:
=SUM(COUNTIF(A2:A10,F1:H1))
Teña en conta as chaves na captura de pantalla a continuación: é a indicación máis evidente dunha fórmula matricial en Excel:
Fórmula 3. SUMAPRODUTO
Outra forma de contar celas con lóxica OU en Excel é usar a función SUMAPRODUTO deste xeito:
SUMAPRODUTO(1*( intervalo= { criterio1, criterio2, criterio3, …}))Para visualizar mellor a lóxica, isto tamén se pode escribir como:
SUMPRODUCT( ( intervalo= criterio1) + ( intervalo= criterio2) + …)A fórmula comproba cada cela do intervalo cada criterio e devolve VERDADEIRO se o criterio se cumpre, FALSO en caso contrario. Como resultado intermedio, obtén algunhas matrices de valores VERDADEIROS e FALSO (o número de matrices é igual ao número dos seus criterios). Despois, engádense os elementos da matriz na mesma posición, é dicir, os primeiros elementos de todas as matrices, os segundos elementos, etc. A operación de adición converte os valores lóxicos en números, polo que acabas cunha matriz de 1 (un dos criterios coincide) e 0 (ningún dos criterios coincide). Porque todos os criterios sonprobado coas mesmas celas, non hai xeito de que apareza ningún outro número na matriz resultante: só unha matriz inicial pode ter TRUE nunha posición específica, outras terán FALSE. Finalmente, SUMPRODUCT suma os elementos da matriz resultante e obtén o reconto desexado.
A primeira fórmula funciona dun xeito similar, coa diferenza de que devolve unha matriz bidimensional de valores TRUE e FALSE. , que multiplica por 1 para converter os valores lóxicos a 1 e 0, respectivamente.
Aplicadas ao noso conxunto de datos de mostra, as fórmulas adoptan a seguinte forma:
=SUMPRODUCT(1*(A2:A10={"apples","bananas","lemons"}))
Ou
=SUMPRODUCT((A2:A10="apples") + (A2:A10="bananas") + (A2:A10="lemons"))
Substitúe a constante matricial codificada por unha referencia de intervalo e obterás unha solución aínda máis elegante:
=SUMPRODUCT(1*( A2:A10=F1:H1))
Nota. A función SUMAPRODUTO é máis lenta que COUNTIF, polo que esta fórmula é mellor usar en conxuntos de datos relativamente pequenos.
Conta as celas con lóxica OU e AND
Ao traballar con datos grandes conxuntos que teñen relacións multinivel e cruzadas entre elementos, é probable que teñas que contar as celas con condicións OU e AND á vez.
Como exemplo, imos contar cun reconto de "mazás" , "plátanos" e "limóns" que se "entregan". Como facemos iso? Para comezar, imos traducir as nosas condicións ao idioma de Excel:
- Columna A: "mazás" ou "plátanos" ou "limóns"
- Columna C: "entregado"
Mirando dendenoutro ángulo, necesitamos contar filas con "mazás e entregadas" OU "plátanos e entregadas" OU "limóns e entregadas". Dito deste xeito, a tarefa redúcese a contar células con 3 condicións OU, exactamente o que fixemos na sección anterior. A única diferenza é que utilizará COUNTIFS en lugar de COUNTIF para avaliar o criterio AND dentro de cada condición OU.
Fórmula 1. COUNTIFS + COUNTIFS
É a fórmula máis longa, que é a máis doado de escribir :)
=COUNTIFS(A2:A10, "apples", C2:C10, "delivered") + COUNTIFS(A2:A10, "bananas", C2:C10, "delivered")) + COUNTIFS(A2:A10, "lemons", C2:C10, "delivered"))
A seguinte captura de pantalla mostra a mesma fórmula con referencias de celas:
=COUNTIFS(A2:A10, K1, C2:C10, K2) + COUNTIFS(A2:A10, L1, C2:C10, K2) + COUNTIFS(A2:A10, M1,C2:C10, K2)
Fórmula 2. COUNTIFS con constante matricial
Pódese crear unha fórmula COUNTIFS máis compacta con lóxica E/OU empaquetando criterios OR nunha constante matricial:
=SUM(COUNTIFS(A2:A10, {"apples","bananas","lemons"}, C2:C10, "delivered"))
Cando usando unha referencia de intervalo para os criterios, necesitas unha fórmula matricial, completada premendo Ctrl + Maiús + Intro :
=SUM(COUNTIFS(A2:A10,F1:H1,C2:C10,F2))
Consello. Se é necesario, podes usar comodins nos criterios de calquera fórmula comentada anteriormente. Por exemplo, para contar todo tipo de plátanos, como "plátanos verdes" ou "plátanos goldfinger", podes usar esta fórmula:
=SUM(COUNTIFS(A2:A10, {"apples","*bananas*","lemons"}, C2:C10, "delivered"))
De forma semellante, podes crear unha fórmula para contar celas baseadas noutros tipos de criterios. Por exemplo, para obter un reconto de "mazás" ou "plátanos" ou "limóns" que se "entreguen" e a cantidade é superior a 200, engade un intervalo de criterios/par de criterios máis aCOUNTIFS:
=SUM(COUNTIFS(A2:A10, {"apples","*bananas*","lemons"}, C2:C10, "delivered", B2:B10, ">200"))
Ou use esta fórmula matricial (introducida mediante Ctrl + Maiús + Intro ):
=SUM(COUNTIFS(A2:A10,F1:H1,C2:C10,F2, B2:B10, ">"&F3))
Contar celas con varias condicións OU
No exemplo anterior, aprendeu a probar un conxunto de condicións OU. Pero que pasa se tes dous ou máis conxuntos e buscas obter un total de todas as relacións OU posibles?
Dependendo de cantas condicións necesites xestionar, podes usar COUNTIFS cunha constante de matriz ou SUMPRODUCT. con ISNUMBER MATCH. O primeiro é relativamente fácil de construír, pero está limitado a só 2 conxuntos de condicións OR. Este último pode avaliar calquera número de condicións (un número razoable, por suposto, tendo en conta o límite de Excel de 255 argumentos e 8192 caracteres para a lonxitude total da fórmula), pero pode levar algún esforzo comprender a lóxica da fórmula.
Conta celas con 2 conxuntos de condicións OR
Ao tratar só con dous conxuntos de criterios OR, só tes que engadir unha constante de matriz máis á fórmula COUNTIFS comentada anteriormente.
Para que a fórmula funcione, unha minuto pero é necesario un cambio crítico: use unha matriz horizontal (elementos separados por comas) para un conxunto de criterios e matriz vertical (elementos separados por punto e coma) para o outro. Isto indica a Excel que "paree" ou que "calcule de forma cruzada" os elementos das dúas matrices e devolva unha matriz bidimensional dos resultados.
Como exemplo, imos contar "mazás", "plátanos" ou"limóns" que se "entregan" ou "en tránsito":
=SUM(COUNTIFS(A2:A10, {"apples", "bananas", "lemons"}, B2:B10, {"delivered"; "in transit"}))
Teña en conta o punto e coma na segunda constante da matriz:
Debido a que Excel é un programa de 2 dimensións, non é posible construír unha matriz de 3 ou 4 dimensións e, polo tanto, esta fórmula só funciona para dous conxuntos de criterios OR. Para contar con máis criterios, terás que cambiar a unha fórmula SUMPRODUCT máis complexa que se explica no seguinte exemplo.
Contar celas con varios conxuntos de condicións OR
Para contar celas con máis de dúas conxuntos de criterios OR, use a función SUMAPRODUTO xunto con ISNUMBER MATCH.
Por exemplo, imos obter un reconto de "mazás", "plátanos" ou "limóns" que se "entregan" ou "en tránsito" e están empaquetados en "bolsa" ou "bandexa":
=SUMPRODUCT(ISNUMBER(MATCH(A2:A10,{"apples","bananas","lemons"},0))*
ISNUMBER(COINCIDENCIA(B2:B10,{"bolsa","bandexa"},0))*
ISNUMBER(COINCIDENCIA(C2:C10,{"entregado","en tránsito"},0)))
No corazón da fórmula, a función COINCIDIR comproba os criterios comparando cada cela no intervalo especificado coa constante matriz correspondente. Se se atopa a coincidencia, devolve unha posición relativa do valor se a matriz, N/A en caso contrario. ISNUMBER converte estes valores en VERDADEIRO e FALSO, que equivalen a 1 e 0, respectivamente. SUMPRODUCT tómao de alí e multiplica os elementos das matrices. Porque multiplicar por cero dá cero, só sobreviven as celas que teñen 1 en todas as matrices ese suma.
A seguinte captura de pantalla mostra o resultado:
Así se usan as funcións COUNTIF e COUNTIFS en Excel para contar celas con múltiples AND como así como as condicións OR. Para ter unha ollada máis atenta ás fórmulas que se comentan neste tutorial, podes descargar o noso libro de exemplo a continuación. Grazas por ler e espero verte no noso blog a próxima semana!
Caderno de prácticas
Excel COUNTIF con condicións OR - exemplos (ficheiro .xlsx)