Ir al contenido principal
Excel

Cómo contar celdas no vacías en Excel: 5 métodos clave

Aprende a contar celdas no vacías en Excel con COUNTA(), COUNTIF(), COUNTIFS(), SUBTOTAL() y SUMPRODUCT() con LEN().
Khalid Abdelaty's photo
Khalid Abdelaty
Actualizado · 10 min leer

Explora con IA

ChatGPTClaudePerplexity

Crea tu cuenta gratuita

Practica y programa tu progreso.

Continuar Con Google
Al continuar, aceptas nuestros Términos de uso, nuestra Política de privacidad y que tus datos se almacenen en los EE. UU.

Contar celdas no vacías parece fácil… hasta que lo intentas. Escribes una fórmula rápida COUNTA() y el número no cuadra con lo que ves en pantalla. Algunas celdas parecen vacías pero se cuentan; otras tienen datos y se pasan por alto.

En este tutorial, voy a guiarte por todos los métodos para contar celdas no vacías: COUNTA(), COUNTIF(), COUNTIFS(), SUBTOTAL() y SUMPRODUCT(). Verás cuándo usar cada uno, qué errores evitar y cómo solucionar los problemas más habituales. Al final, sabrás qué función elegir en cada situación.

Contar celdas no vacías con COUNTA()

COUNTA() es mi función de referencia para contar celdas no vacías. Cuenta todo lo que no esté completamente vacío: texto, números, fechas, errores e incluso fórmulas que devuelven cadenas vacías.

counting non blank excel cells

Cómo funciona COUNTA()

La sintaxis es simple:

=COUNTA(value1, [value2], ...)

value1 es el rango que quieres contar. Puedes añadir hasta 255 argumentos, aunque normalmente usarás un solo rango.

Aquí tienes un ejemplo de un seguimiento de encuestas que preparé el mes pasado. Tuve 12 respuestas, pero algunas personas omitieron preguntas y otras lo abandonaron a mitad. Necesitaba saber cuántas personas me dieron realmente una dirección de email.

=COUNTA(B2:B13)

Esto me devolvió 10 porque dos personas (Ahmed Hassan y Mohamed Ali) dejaron el campo de email en blanco.

COUNTA() cuenta diez celdas de email no vacías. Vídeo del autor.

También puedo contar a lo largo de una fila para ver cuán completa está la respuesta de cada persona:

=COUNTA(B2:F2)

Para Sara Ibrahim, esto devuelve 5 porque rellenó todos los campos. Para Nour Mahmoud, =COUNTA(B6:F6) devuelve solo 1 ya que solo indicó su email y abandonó el resto.

COUNTA() muestra el nivel de completitud por persona. Vídeo del autor.

Cuándo basta con COUNTA()

Usa COUNTA() cuando necesitas un recuento simple y tus datos están limpios. Si cada celda en blanco de tu rango está realmente vacía (nunca se tocó, sin fórmulas), COUNTA() funciona a la perfección.

Donde empiezan los líos es cuando las fórmulas devuelven "" (cadenas vacías). Te explicaré ese caso particular más adelante en la sección "Cómo trata Excel las celdas en blanco vs. vacías".

Contar celdas no vacías con COUNTIF()

COUNTIF() te ofrece otra forma de contar celdas no vacías. En lugar de contar todo lo que existe, cuenta celdas que cumplen una condición. Y esa condición puede ser "no vacío".

El criterio "<>"

Así queda la fórmula:

=COUNTIF(B2:B13,"<>")

La parte "<>" significa "no igual a nada", que es otra forma de decir "no vacío". Para la misma columna de emails de antes, esto me devuelve 10, lo mismo que COUNTA().

COUNTIF() con "<>" iguala el resultado de COUNTA() aquí. Vídeo del autor.

¿Por qué no usar COUNTIF(range,"*")?

Lo veo en tutoriales antiguos, y es un error. El comodín "*" solo cuenta texto. Ignora por completo números, fechas y valores VERDADERO/FALSO. Si tu columna tiene tipos de datos mixtos, obtendrás un recuento incorrecto.

Quédate con "<>". Funciona independientemente del tipo de dato.

Cuándo COUNTIF() es mejor que COUNTA()

La gran ventaja de COUNTIF() es que te lleva de forma natural a COUNTIFS(). Cuando necesites contar celdas no vacías que además cumplan otras condiciones (como un departamento concreto o un rango de fechas), COUNTIFS() es la opción. Si crees que añadirás condiciones más adelante, empieza con COUNTIF() para facilitar el cambio.

Para la mayoría de datos, COUNTA() y COUNTIF(range,"<>") dan resultados idénticos. Ambos cuentan lo mismo, incluidos errores y vacíos generados por fórmulas. La diferencia principal es la flexibilidad: COUNTIF() es tu puente hacia el recuento con múltiples criterios con COUNTIFS().

Contar celdas no vacías que cumplen condiciones

Aquí es donde COUNTIF() brilla de verdad. COUNTIFS() te permite contar celdas no vacías que además cumplen otras condiciones.

COUNTIFS() con lógica de no vacío

Imagina que hago el seguimiento de una formación interna y quiero saber cuántas personas de Sales han entregado una puntuación. Esta es la fórmula:

=COUNTIFS(B2:B11,"Sales",E2:E11,"<>")

Esto significa: "Cuenta las filas donde Department es 'Sales' Y Score no está vacío". En mi seguimiento, esto me da 3 porque Mona Sayed está en Sales pero aún no ha entregado su puntuación.

COUNTIFS() cuenta al personal de Sales con la puntuación informada. Vídeo del autor.

Varias condiciones

Puedes apilar hasta 127 parejas de criterios si lo necesitas. Este cuenta empleados marcados como "Complete" que además tienen puntuación:

=COUNTIFS(C2:C11,"Complete",E2:E11,"<>")

Esto me devuelve 6 porque Mona Sayed completó la formación pero no envió su puntuación.

Otro ejemplo. Contar personas de Engineering que tienen fecha de finalización:

=COUNTIFS(B2:B11,"Engineering",D2:D11,"<>")

Esto devuelve 3 porque la formación de Omar Mostafa sigue pendiente y aún no tiene fecha.

Varias fórmulas COUNTIFS() para distintos criterios. Vídeo del autor.

El patrón es sencillo: usa "<>" en la columna que quieres comprobar como no vacía, y aplica tus filtros específicos en las otras columnas.

Cómo trata Excel las celdas "en blanco" vs. "vacías"

Aquí es donde se cometen la mayoría de errores de recuento. Excel distingue varios tipos de "vacío" que se ven iguales en pantalla.

Celdas realmente vacías

Una celda realmente vacía nunca se ha tocado o se ha borrado por completo. ISBLANK() devuelve TRUE, COUNTA() la omite y COUNTBLANK() la cuenta. Este es el único tipo de celda que todas las funciones consideran en blanco.

Cadenas vacías generadas por fórmulas

Este detalle pilla a mucha gente. Cuando una fórmula como =IF(A1>60,"Pass","") devuelve "", la celda parece vacía pero en realidad contiene el resultado de una fórmula. Así lo ven las distintas funciones:

  • COUNTA() → La cuenta (no vacía)
  • COUNTIF(range,"<>") → La cuenta (no vacía)
  • COUNTBLANK() → La cuenta (vacía)
  • ISBLANK() → Devuelve FALSE

¿Ves el problema? COUNTBLANK() dice que está vacía, pero ISBLANK() dice que no. Esto confunde incluso a usuarios con años de experiencia.

Funciones distintas discrepan con vacíos generados por fórmulas. Vídeo del autor.

La solución con SUMPRODUCT() + LEN()

Para contar solo celdas con contenido visible real (sin vacíos de fórmula ni espacios), usa esto:

=SUMPRODUCT(--(LEN(B5:B10)>0))

Comprueba cuántos caracteres tiene cada celda. Si LEN() devuelve 0, la celda está vacía sí o sí. El -- convierte VERDADERO/FALSO en 1/0, y SUMPRODUCT() los suma.

Para un recuento aún más estricto que también ignore celdas con espacios:

=SUMPRODUCT(--(LEN(TRIM(B5:B10))>0))
SUMPRODUCT() con LEN() detecta vacíos generados por fórmulas. Vídeo del autor.

Celdas con caracteres ocultos

A veces una celda parece vacía pero tiene un espacio (CHAR(32)) o un espacio de no separación (CHAR(160)) procedente de la web o de PDFs. COUNTA() la contará, LEN() devolverá 1 o más, y ISBLANK() dirá FALSE.

Para detectarlas en tu recuento, usa la fórmula más estricta que mostré antes: =SUMPRODUCT(--(LEN(TRIM(range))>0)). TRIM() elimina espacios normales antes de contar. Para espacios de no separación, limpia primero con =SUBSTITUTE(A1,CHAR(160),"") o usa la función CLEAN().

Contar celdas no vacías en datos filtrados

Aquí hay algo que pilla por sorpresa: filtras tus datos, escribes una fórmula COUNTA() y el resultado sigue incluyendo las filas ocultas. Es porque COUNTA() ignora los filtros. Cuenta todo el rango, lo veas o no.

SUBTOTAL(): la alternativa que respeta filtros

SUBTOTAL() soluciona esto. Cuenta respetando los filtros.

=SUBTOTAL(3,D2:D11)

El 3 indica a SUBTOTAL() que haga un recuento estilo COUNTA(). La diferencia: omite filas ocultas por filtros.

SUBTOTAL() cuenta solo las celdas no vacías visibles. Vídeo del autor.

Números de función: 3 vs. 103

SUBTOTAL() tiene dos modos:

  • Número de función 3: omite filas ocultas por AutoFilter, pero cuenta las ocultas manualmente.
  • Número de función 103: omite TODAS las filas ocultas (tanto por filtro como manualmente).
=SUBTOTAL(3,D2:D11)    -- Omite filas por AutoFilter
=SUBTOTAL(103,D2:D11)  -- Omite TODAS las filas ocultas

La mayoría de veces, 3 es lo que necesitas. Usa 103 solo si has ocultado filas manualmente (clic derecho > Ocultar) y también quieres excluirlas.

AGGREGATE(): alternativa para datos con problemas

Si tus datos filtrados tienen errores, SUBTOTAL() devolverá error. AGGREGATE() lo maneja mejor:

=AGGREGATE(3,7,D2:D11)

El 3 es el número de función (COUNTA()), y el 7 indica que ignore tanto filas ocultas como errores. Es la opción más segura para datos problemáticos, aunque la mayoría no la necesitará.

Contar celdas no vacías en tablas de Excel

Si tus datos están en una tabla de Excel (Insertar > Tabla o Ctrl+T), puedes usar referencias estructuradas en lugar de direcciones de celdas. Esto hace tus fórmulas más claras y se actualizan automáticamente cuando la tabla crece.

Referencias estructuradas con COUNTA()

En lugar de escribir =COUNTA(C2:C9), escribe:

=COUNTA(TaskTracker[Assigned To])

Esto cuenta celdas no vacías en la columna Assigned To de mi tabla TaskTracker. La referencia omite automáticamente la fila de encabezado y se expande al añadir nuevas filas.

COUNTA() con referencias estructuradas se ajusta cuando la tabla crece. Vídeo del autor.

Combinar COUNTIFS() con referencias estructuradas

COUNTIFS() funciona de maravilla con tablas:

=COUNTIFS(TaskTracker[Status],"Done",TaskTracker[Completion Date],"<>")

Esto cuenta tareas marcadas como "Done" que tienen fecha de finalización. En mi seguimiento, esto me da 4 porque todas las tareas completadas tienen fecha.

Por qué las tablas son mejores para contar

Hay dos motivos. Primero, las referencias estructuradas omiten la fila de encabezado automáticamente, así que no tienes que preocuparte por empezar en la fila 2. Segundo, cuando añades una nueva fila a la tabla, todas las fórmulas con referencias estructuradas incorporan los nuevos datos. No hace falta actualizar rangos manualmente.

Es perfecto para datos que crecen con el tiempo: registros, seguimientos o datos que importas con regularidad.

Problemas comunes al contar celdas no vacías

El recuento es mayor de lo esperado

Qué pasa: COUNTA() dice 6, pero solo ves 4 celdas con datos.

Por qué: dos celdas tienen fórmulas que devuelven "". Como comenté, parecen vacías pero técnicamente no lo están.

Solución: usa =SUMPRODUCT(--(LEN(range)>0)) en lugar de COUNTA(). Así solo cuentas celdas con contenido visible, ignorando vacíos generados por fórmulas.

COUNTA() sobrecuenta cuando las fórmulas devuelven cadenas vacías. Vídeo del autor.

Los espacios ocultos estropean el recuento

Qué pasa: una celda parece vacía, pero COUNTA() la cuenta y ISBLANK() devuelve FALSE.

Por qué: la celda tiene espacios, probablemente al copiar datos de una web u otro archivo.

Solución: compruébalo con =LEN(A1). Si devuelve más de 0 cuando la celda parece vacía, hay caracteres ocultos. Limpia tus datos primero con =TRIM(A1), o usa la fórmula estricta que mostré: =SUMPRODUCT(--(LEN(TRIM(range))>0)).

LEN() revela espacios ocultos que TRIM() puede eliminar. Vídeo del autor.

Se cuentan valores de error y no quieres

Qué pasa: quieres contar celdas no vacías pero se incluyen errores como #DIV/0! o #N/A .

Por qué: tanto COUNTA() como COUNTIF(range,"<>") tratan los errores como no vacíos.

Solución: si tus datos además están filtrados, usa =AGGREGATE(3,7,range) como comenté en la sección de filtrados. El 7 omite filas ocultas y errores. Para datos sin filtrar, usa =SUMPRODUCT(--(LEN(IFERROR(range,""))>0)).

El recuento no se actualiza tras filtrar

Qué pasa: filtras tus datos y COUNTA() sigue mostrando el recuento sin filtrar.

Por qué: COUNTA() ignora por completo los filtros.

Solución: usa =SUBTOTAL(3,range) como vimos en la sección de datos filtrados. Se ajusta automáticamente según lo visible.

Buenas prácticas para contar celdas no vacías

Tras lidiar con estos casos más veces de las que admitiría, esto es lo que hago ahora:

  • Empieza con COUNTA() para conjuntos de datos limpios y simples. Es rápido y directo.

  • Usa COUNTIF(range,"<>") si quizá añadas condiciones después. Conecta de forma natural con COUNTIFS() para recuentos con varios criterios.

  • Prueba si hay vacíos de fórmula antes de fiarte del recuento. Haz comprobaciones puntuales en algunas celdas "vacías" con =LEN(cell). Si devuelve algo distinto de 0, cambia al enfoque SUMPRODUCT()+LEN().

  • Usa SUBTOTAL(3,range) con datos filtrados. Es la única función de recuento que respeta filtros.

  • Limpia primero los datos importados. Aplica TRIM() y revisa CHAR(160) en datos de webs u otras fuentes.

  • Usa tablas de Excel para conjuntos en crecimiento. Las referencias estructuradas se actualizan solas al añadir filas.

  • Documenta las fórmulas complejas. Si usas SUMPRODUCT(--(LEN(TRIM(range))>0)), añade un comentario explicando el porqué. Tu yo del futuro te lo agradecerá.

Conclusión

Excel te ofrece varias formas de contar celdas no vacías, y la adecuada depende del caso. COUNTA() sirve para la mayoría. COUNTIF() y COUNTIFS() te dejan añadir condiciones. SUBTOTAL() respeta filtros. Y SUMPRODUCT() con LEN() es tu plan B cuando las fórmulas crean vacíos invisibles.

El truco no es memorizar fórmulas. Es entender qué considera Excel como "en blanco". Una fórmula que devuelve "" parece vacía pero no lo está. Un espacio es invisible pero cuenta. Una vez interiorices estas diferencias, no volverán a sorprenderte los recuentos erróneos.

Si quieres seguir desarrollando tus habilidades en Excel, echa un ojo a nuestro curso Data Analysis in Excel. Cubre fórmulas, tablas dinámicas y limpieza de datos, perfecto para complementar lo que hemos visto aquí.


Khalid Abdelaty's photo
Author
Khalid Abdelaty
LinkedIn

Soy ingeniero de datos y creador de comunidades. Trabajo con canalizaciones de datos, nube y herramientas de IA, al tiempo que escribo tutoriales prácticos y de gran impacto para DataCamp y programadores emergentes.

FAQs

¿Cuál es la forma más rápida de contar celdas no vacías en Excel?

Solo selecciona tu rango y mira la barra de estado en la parte inferior de Excel. Muestra "Count" automáticamente sin ninguna fórmula. Perfecto para una comprobación rápida. Si necesitas el recuento en una celda para cálculos, usa =COUNTA(range).

¿Por qué COUNTA() cuenta celdas que parecen vacías?

Probablemente esas celdas tienen fórmulas que devuelven "" o espacios ocultos de un copiar/pegar. Compruébalo con =LEN(A1). Si devuelve más de 0, la celda no está realmente vacía. La solución es =SUMPRODUCT(--(LEN(range)>0)) que solo cuenta celdas con contenido visible.

¿Qué pasa si uso COUNTA() en datos filtrados?

COUNTA() ignora los filtros y lo cuenta todo, incluidas las filas ocultas. Usa =SUBTOTAL(3,range) en su lugar. Omite automáticamente las filas filtradas. Especialmente útil en informes donde los usuarios aplican sus propios filtros.

¿COUNTIF() puede contar celdas no vacías más rápido que COUNTA()?

COUNTA() es más simple para recuentos básicos de no vacíos. Usa COUNTIF(range,"<>") cuando necesites lógica basada en condiciones o cuando planees ampliarla más tarde con COUNTIFS(). La diferencia de rendimiento es despreciable para conjuntos típicos.

¿Cómo excluyo los vacíos generados por fórmulas del recuento?

Usa =SUMPRODUCT(--(LEN(TRIM(range))>0)). Esto cuenta solo celdas con caracteres visibles reales. TRIM() también elimina espacios ocultos, por lo que es un método muy robusto para datos sucios con vacíos de fórmula y espacios extra.

Temas
Excel

Aprende Excel con DataCamp

Curso

Preparación de datos en Excel

3 h
96.2K
Aprende cómo preparar los datos de Excel con funciones lógicas, fórmulas anidadas, funciones de búsqueda y tablas dinámicas.
Ver detallesEmpezar Curso

Programa

Fundamentos de Excel

16 h
Adquiere las habilidades esenciales que necesitas para utilizar Excel, desde preparar datos hasta escribir fórmulas y crear visualizaciones. No se requiere experiencia previa.

Crea tu cuenta gratuita

Practica y programa tu progreso.

Continuar Con Google
Al continuar, aceptas nuestros Términos de uso, nuestra Política de privacidad y que tus datos se almacenen en los EE. UU.
Ver más
Relacionado

Tutorial

FUNCIÓN SQL COUNT()

COUNT() te permite contar el número de filas que cumplen determinadas condiciones. Aprende a utilizarlo en este tutorial.
Travis Tang 's photo

Travis Tang

3 min

Tutorial

Las 15 fórmulas básicas de Excel que todo el mundo debe conocer

Aprende a añadir fórmulas aritméticas, de cadena, de series temporales y complejas en Microsoft Excel.
Abid Ali Awan's photo

Abid Ali Awan

15 min

Tutorial

AVERAGE() en Excel: una función esencial explicada

Aprende a trabajar con la función AVERAGE() de Excel, incluidas sus variantes condicionales y lógicas.
Josef Waples's photo

Josef Waples

3 min

Tutorial

Guía completa para calcular distribuciones de frecuencias en Excel

Sigue nuestra guía paso a paso para crear distribuciones de frecuencias en Excel utilizando la función FRECUENCIA() con sólo dos argumentos: matriz_datos y matriz_bins.
Arunn Thevapalan's photo

Arunn Thevapalan

11 min

Tutorial

Prueba Chi-cuadrado en hojas de cálculo

En este tutorial, aprenderás a realizar la prueba chi-cuadrado en hojas de cálculo.
Avinash Navlani's photo

Avinash Navlani

10 min

Tutorial

Tipos de datos en Excel y sus usos: Guía completa

Aprende a identificar y dar formato a todos los tipos de datos en Excel, y luego explora valiosos consejos sobre la conversión entre tipos de datos para que tu hoja de cálculo sea más funcional.
Laiba Siddiqui's photo

Laiba Siddiqui

9 min

Ver más