CONTAR.SI para contar datos con condiciones

excel contar.si condiciones

Como ya te mostré en el artículo anterior, Excel cuenta con varias funciones para contar diferentes tipos de datos como números, celdas en blanco, fechas, etc.

Hoy te hablaré de la función CONTAR.SI, que desde la versión de Excel 2007, puedes utilizar para contar las celdas que coinciden con un criterio.

Sintaxis y uso de CONTAR.SI

Como digo, la función CONTAR.SI se utiliza para contar las celdas de un rango que coinciden con un criterio o condición.

Por ejemplo, puedes utilizar CONTAR.SI para averiguar el número de celdas que contienen un número mayor o menor que el número que le indiques. Otro ejemplo típico lo encontramos al contar las celdas que contienen una palabra determinada o que comienzan con uno o varios caracteres.

La sintaxis es la siguiente:

=CONTAR.SI(rango;criterio)

  • Rango: es el conjunto de celdas que se quieres contar.
  • Criterio: Aquí se indica la condición que debe cumplir cada celda del rango para que la función la cuente. Puedes introducir números, textos, referencias de celdas o expresiones. Por ejemplo, podrías introducir criterios en estos formatos: “15”, A5, “>=20”, “Excel”.

El ejemplo más sencillo donde puedes utilizar CONTAR.SI es para averiguar el número de veces que se encuentra el valor de una celda.

contar.si excel

La imagen que ves muestra el listado de los campeones de la liga de fútbol española. CONTAR.SI te servirá para conocer cuántas veces ganó tu equipo favorito desde 1929.

=CONTAR.SI(B2:B88;D3)

excel ejemplo contar.si

Atención: CONTAR.SI no diferencia entre mayúsculas y minúsculas, así que “FC Barcelona” devolvería el mismo resultado que “FC BARCELONA”.

Algunos ejemplos con CONTAR.SI

Como acabas de ver la sintaxis de CONTAR.SI es muy sencilla. Además, permite utilizar desde este tipo de sencillos criterios, hasta otros mucho más complejos donde puedes introducir caracteres comodín, valores de otras celdas e incluso otras funciones. Este es el secreto por el que CONTAR.SI es una de las funciones más utilizadas.

Valores de texto

En el ejemplo anterior te he mostrado que podemos utilizar como criterio una referencia a una celda que contenga un valor (D3), pero también es posible introducir un valor literal. La fórmula devolvería el mismo resultado si introdujeras:

=CONTAR.SI(B2:B88;”FC Barcelona”)

Uso de comodines

Como digo, se pueden crear criterios muy complejos que, por ejemplo, afecten a varias celdas que no contengan el mismo valor, sino que coincidan únicamente con parte del contenido

Por ejemplo, imagina que quieres contar las celdas cuyo contenido termina con la letra”a”. Sólo tienes que agregar el comodín “*” antes de la letra a. De esta forma:

=CONTAR.SI(B2:B88;”*a”)

Otro ejemplo: con CONTAR.SI puedes contar las celdas vacías y no vacías utilizando comodines:

=CONTAR.SI(B2:B88;”<>”&””) devuelve las celdas no vacías.

=CONTAR.SI(B2:B88;””) devuelve las celdas vacías.

Por supuesto, también puedes utilizar CONTAR.BLANCO.

Más información sobre los comodines en Excel:

Contar celdas mayores, menores o iguales a un valor

Para contar celdas con valores mayores que, menores que o iguales a un número dado, solo tienes que utilizar el operador de comparación correspondiente como te muestro en la siguiente tabla:

Criterio Fórmula Descripción
Contar si es mayor que =CONTAR.SI(A3:A11;”>5″) Cuenta las celdas cuyo valor es mayor que 5.
Contar si es menor que =CONTAR.SI(A3:A11;”<5″) Cuenta las celdas cuyo valor es menor que 5.
Contar si es igual a =CONTAR.SI(A3:A11;”=5″) Cuenta las celdas cuyo valor es igual a 5.
Contar si es diferente a =CONTAR.SI(A3:A11;”<>5″) Cuenta las celdas cuyo valor es distinto a 5.
Contar si es mayor o igual a =CONTAR.SI(A3:A11;”>=5″) Cuenta las celdas cuyo valor es mayor o igual a 5.
Contar si es menor o igual a =CONTAR.SI(A3:A11;”<=5″) Cuenta las celdas cuyo valor es igual o menor que 5.

Como observarás en la tabla he utilizado criterios basados en valores literales, es decir, escritos directamente en la celda. También puedes utilizar criterios basados en el valor de otra celda. En este caso sólo tendrías que reemplazar el número 5 por la referencia correspondiente.

Observa cómo lo hago en este ejemplo:

contar excel más alto

 

Atención: Cuando se utilizan referencias de celda, debes encerrar el operador entre comillas y agregar el símbolo ampersand (&) antes de la referencia de celda.

En el ejemplo se cuentan los valores del rango A2:C10 cuyo valor de las celdas es mayor que 4, así que he introducido la fórmula =CONTAR.SI(A2:C10;”>”&F2).

CONTAR.SI con fechas

Si quieres contar las celdas con fechas que son más antiguas, más modernas o iguales a una fecha dada, debes proceder de forma similar a como te he estado mostrando hasta ahora. Tanto los comodines como los operadores de comparación funcionan perfectamente con fechas. Échale un vistazo a esta tabla:

Criterio Fórmula Descripción
Cuenta las fechas iguales a otra fecha =CONTAR.SI(B2:B30;”7/2/2019″) Cuenta el número de celdas del rango que contiene la fecha 7/2/2019.
Cuenta las fechas más recientes que otra fecha =CONTAR.SI(B2:B30;”>=7/2/2019″) Cuenta las celdas del rango que contienen una fecha mayor o igual a 7/2/2019.
Cuenta las fechas más recientes que otra fecha menos x días =CONTAR.SI(B2:B30;”>=”&E5-“3”) Cuenta las celdas que tienen una fecha mayor o igual a la fecha dada en E5 menos 3 días.

excel función contar.si

Estas son algunas de las formas en que se utiliza CONTAR.SI con fechas. Una función muy útil para combinar con ella es HOY con la que podremos contar celdas relativas a la fecha de hoy.

Criterio Fórmula
Cuenta las celdas que contienen la fecha de hoy =CONTAR.SI(B2:B30;HOY())
Cuenta las fechas anteriores al día de hoy =CONTAR.SI(B2:B30;”<“&HOY())
Cuenta las fechas de dentro de una semana =CONTAR.SI(B2:B30;”=”&HOY()+7)

contar semana siguiente excel

CONTAR.SI para buscar valores duplicados

Otro uso que le puedes dar a CONTAR.SI es para contar valores repetidos. Con Formato condicional puedes marcarlos con otro color, pero no saber el número de ellos que existe. Te muestro algunos ejemplos:

Contar duplicados en una sola columna

Observa los datos de la imagen. Contienen valores duplicados en la columna A.

contar duplicados excel

Las fórmulas de cada fila devuelven VERDADERO si el número de valores iguales es mayor que 1. En caso contrario, devuelve FALSO.

Tras esto habría que sumar únicamente los resultados VERDADERO del rango de celdas de la columna B.

Contar duplicados en dos columnas

En algunas ocasiones tendrás que comparar dos columnas para ver si los valores de una se encuentran en la otra. Combinando las funciones CONTAR.SI con SUMAPRODUCTO es posible contar el número de duplicados.

=SUMAPRODUCTO((CONTAR.SI(A3:A29;B3:B29)>0)*(B3:B29<>””))

Aquí te cuento cómo utilizar SUMAPRODUCTO para contar duplicados.

Resumen

Espero que estos ejemplos te hayan servido para conocer un poco mejor una de las funciones más utilizadas de Excel. Si utilizas CONTAR.SI en otros cálculos, escríbelo en los comentarios. Me alegrará mucho leerlo.

Respuestas

  1. Hola Sergio, a ver si me puedes ayudar con esta función. Necesito sumar un rango de celdas en una fila, por ejemplo A2:C2, siempre que la celda A2 cumpla que es >0 y si no se da esta condición el resultado sea “no cumple”.

    Muchas gracias

    1. Hola Nuria!
      Puedes utilizar la siguiente fórmula:
      =SI(A2>0;SUMA(A2:C2);"No cumple")

  2. Hola Sergio!
    Necesito ayuda con lo siguiente:
    Si quisiera contar cuantos alumnos sacaron 4 en los exámenes realizados en un mes especifico, que formula me sirve?
    Muchas gracias

    1. Hola Jesica!
      La función que necesitas es CONTAR.SI.CONJUNTO. Con ella puedes establecer varios criterios (puntuación en el examen, fecha de comienzo y fecha de finalización).

  3. Hola

    quiero contar datos que son capturados a diario en un msimo excel solo en una hoja aparte que tiene numero de parte y hay mismo grafica lo que se capturo , como le puedo hacer ya busque mucho y no encuentro nada ayuda

  4. Hola Sergi, súper claro tu articulo!
    Tengo una pregunta. Necesito que la función me cuente datos y además me los agrupe. ¿Cómo puedo escribirla?

    1. Hola Erika!
      Lo podrías hacer con fórmulas pero será más complejo que si lo haces con una tabla dinámica. La tabla dinámica te agrupará automáticamente los datos, y te contará los datos que desees.

  5. Hola Sergio!
    Muy clara tu explicación. Tengo una duda: Supongamos en base a tu ejemplo de la Liga Española que en 2015 hubo dos campeonatos y uno de ellos no está en la lista. Si inserto una fila, ¿debo corregir el rango de celdas en la fórmula o la última celda se actualiza sola?

    1. ¡Hola Alfredo!
      Precisamente en este ejemplo sí tendrías que actualizar los rangos en la fórmula, pues no he utilizado tablas. Si deseas que al introducir nuevas filas, las fórmulas se actualicen, debe convertir el rango de celdas en una tabla.

  6. Hola Sergio…

    Quiero contar directamente las celdas cuyo largo de caracteres sea mayor que cero.

    Gracias

    1. Hola Juan Manuel,

      Las celdas con número de caracteres 0 significa que están vacías y, por lo tanto puedes contar las que no se encuentren vacías con CONTAR.SI. El criterio que debes aplicar es <>“”.

  7. Buen dia Sergio:
    Necesito marcar de un rango de celdas aquellas que tengan valores por ejemplo entre 11 y 14.
    por favor tu ayuda

    1. Hola Adriana,
      Para resaltar celdas que se encuentran entre un rango de números debes utilizar Formato condicional.
      Echa un vistazo a este artículo.

  8. Hola buenas noches tengo una consulta, y es que tengo una tabla con información de una base de datos que contiene nombre apellido edad y sexo, y he creado un menú desplegable para atraves del nombre poder conocer todos esos datos, pero quiero que al elegir un hombre o una mujer en el menú desplegable me contabilice el número de mujeres y hombres que hay en la columna de que especifica el sexo, como puedo hacer para lograr ese procedimiento?

    1. Ya has conseguido lo más difícil, Jonadab. Ahora solo tienes que aplicar CONTAR.SI especificando como criterio, la celda que contiene el sexo. Te contará los valores que introduzcas en dicha celda.

  9. Hola! tengo X cantidad de filas con fechas, y debo en una celda sumar las que correspondan a la semana (por ejemplo) 33, cuantas a la semana 34, cuantas a la semana 35 .. y asi sucesivamente. Como puedo hacerlo? Muchas gracias

    1. Buenos días Adrián!
      Puedes utilizar como condición la función NUM.DE.SEMANA o ISO.NUM.DE.SEMANA. La diferencia entre estas funciones es que una considera que la primera semana es donde se encuentra el día 1 de enero y en la otra la primera semana es donde se encuentra el primer jueves del año.

  10. Buenas tardes. Tengo una base de datos con fechas y nombres de personas, necesito contar las veces que está el nombre de una persona en un determinado rango de fechas, o sea, colocar en una celda la fecha desde la cual quiero buscar y en otra celda la fecha hasta la cual quiero buscar y en una tercera celda el nombre de la persona que busco y que en la celda cuarta me cuente el numero de veces que está ese nombre en ese rango de fechas. Gracias.

    1. Buenos días José Luis. La función que necesitas es CONTAR.SI.CONJUNTO. En ella debes establecer las siguientes condiciones:
      >=Fecha inicial
      <=Fecha final =Nombre Así contará los nombres entre las dos fechas.

Los comentarios están cerrados.