Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Level up your Power BI skills this month - build one visual each week and tell better stories with data! Get started

Reply
_paulapowerBi
New Member

Error DISTINCTCOUNTNOBLANK no recuenta bien cuando se resume

Hola, 

 

Tengo una tabla en el visual para hacer un recuento de productos, si solo muestro el recuento, sin poner en la columna los códigos de producto, me hace el recuento de 72; pero cuando pongo el desglose por producto me cuenta solo 71 (incluso activando la opción de "mostrar elementos sin datos". 

He probado las siguientes formulas: 

DISTINCTCOUNTNOBLANK
DISTINCTCOUNT
COUNTROWS(VALUES())
Incluso he puesto directamente la columna y he modificado el "No resumir" por "Recuento (distintivo)". 
_paulapowerBi_0-1773054394617.png_paulapowerBi_1-1773054404478.png

 

¿Alguien sabe que puede estar pasando? No tengo ningun filtro ni nada aplicado, ni se ha modificado nada entre las dos imagenes. Igualmente en la base de datos me salen 71 solo. 

_paulapowerBi_2-1773054485704.png

 



4 REPLIES 4
pcoley
Impactful Individual
Impactful Individual

Hola @_paulapowerBi 
Es posible que no todos los items tengan valores en "item produced" y/o "items visibles"; cuando solo muestras el "recuento" no tienes ningun contexto activo, no hay un filtro en la visualizacion y todos los valores son contados sin importar que tengan un item relacionado o no. Tienes otro campo  (diferente a "items") que puedas garnatizar que tiene almenos con el que puedas probar en la tabla?

Tienes 72 filas en tu tabla de hechos, pero solo 71 productos con código.

Hay 1 fila donde el [Código de Producto] está en BLANK (vacío/null).

  • Cuando no pones el código de producto en el visual → Power BI te cuenta todas las filas = 72.
  • Cuando pones el código de producto en filas → Power BI agrupa por los valores existentes y el BLANK normalmente se oculta o no se cuenta como un producto más, por eso te sale 71.

Aunque actives "Mostrar elementos sin datos", muchas veces el BLANK no aparece si no hay una relación o por cómo está configurada la columna.


Sugiero crear esta medida para confirmar:

Productos con BLANK = 
CALCULATE(
    COUNTROWS('Tabla Productos'),
    ISBLANK('Tabla Productos'[Código Producto])
)
Si te devuelve 1, ya confirmamos el problema.
---------------

 

Usa esta medida si quieres ajustar el conteo:

# Productos = 
VAR Conteo = DISTINCTCOUNTNOBLANK('Tabla Productos'[Código Producto])
RETURN
    IF(
        ISINSCOPE('Tabla Productos'[Código Producto]),
        Conteo,
        CALCULATE( COUNTROWS('Tabla Productos') )   // Total real incluyendo blank
    )



I hope this helps.
If so please Mark it as a solution.
Kudos are Welcome!
julsr
Responsive Resident
Responsive Resident

Hola @_paulapowerBi  ,

 

Lo que tienes se debe al comportamiento documentado de DAX y con un patrón muy habitual en informes: DISTINCTCOUNTNOBLANK no cuenta el valor BLANK (vacío en el modelo), mientras que DISTINCTCOUNT sí cuenta BLANK como un valor distinto más

 

En la práctica, cuando el total se muestra sin el código en el eje del visual, el contexto de filtro es más amplio y a veces el recuento refleja matices que al poner el código en filas desaparecen: las filas cuyo código queda en blanco no siempre generan una fila visible tipo “(En blanco)” en el desglose, y la opción “Mostrar elementos sin datos” suele orientarse a combinaciones con dimensiones relacionadas, no a garantizar una fila por cada blanco en la misma columna que estás usando en filas. Por eso es frecuente ver un total distinto entre el resumen y la tabla desglosada, aunque no hayas cambiado filtros a mano.

 

Dado que tu base de datos marca 71, lo razonable es tratar 71 como el número de productos con código válido y localizar el “72º” como filas o combinaciones con código vacío o como diferencia de contexto entre medida y visual.

Lo qué haría yo como siguiente paso:

  1. Medida de diagnóstico para ver si hay ventas/hechos con código en blanco (ajusta tabla y columna a tu modelo).
  2. Si confirma blancos: en Power Query, asignar un código explícito (por ejemplo SIN CÓDIGO) o filtrar según negocio, y para KPIs usar DISTINCTCOUNTNOBLANK si no deben contarse productos sin código.
  3. Si los blancos son válidos y deben verse, valorar DISTINCTCOUNT y una columna/categoría que haga visible el caso sin código.

Referencia útil: DISTINCTCOUNTNOBLANK (DAX) y DISTINCTCOUNT (DAX) 

 

 

Un saludo.

meridiandata
New Member

Hola, esto es un comportamiento clásico en Power BI con medidas de DISTINCTCOUNT / DISTINCTCOUNTNOBLANK cuando añades desglose por la misma columna (o relacionada).

Lo que pasa es que:

  • En el total (sin desglose) → el contexto es amplio y cuenta todos los valores distintos no-blank (incluyendo posiblemente un "producto" con código blank que se agrupa en el total).
  • Al poner el código en filas → cada fila filtra por un código específico → si hay filas con código BLANK, esas filas no generan una fila visible en el visual (aunque marques "mostrar elementos sin datos"). Power BI no crea una categoría "(blank)" automáticamente en desgloses así, y por tanto ese conteo "extra" desaparece → total baja de 72 a 71.

Pruebas rápidas para confirmar:

  1. Crea una tabla solo con la columna de código de producto (sin medida) → ¿ves 72 filas o 71? Si ves 71 → hay un blank que no aparece.
  2. Añade un filtro visual o de página para excluir blanks en esa columna → el total debería quedar en 71 siempre.

Soluciones habituales:

  • Si no quieres contar productos sin código → usa DISTINCTCOUNTNOBLANK tal cual y acepta que el total con desglose sea 71 (es lo correcto).
  • Si quieres forzar que el total siempre sea el global (72) incluso con desglose → crea una medida con SUMX sobre los valores distintos:
     
    Productos Distintos Total Fijo =
    SUMX(
    VALUES(TuTabla[CodigoProducto]),
    CALCULATE(DISTINCTCOUNTNOBLANK(TuTabla[CodigoProducto]))
    )
     
    (cambia "TuTabla" y "CodigoProducto" por los tuyos). Esto itera sobre todos los códigos posibles y suma 1 por cada uno no-blank.
  • Otra opción: limpia los datos upstream (en Power Query) para que no haya blanks en códigos de producto si no tienen sentido.

¿Puedes compartir una captura del modelo de datos (relaciones) o decir si esa columna de código viene de una dimensión o está en la tabla de hechos? Así afinamos más.

En Meridian Data & IA hemos visto este caso muchas veces al optimizar reportings para pymes → si necesitas ayuda con medidas DAX o limpieza de datos: https://meridiandata.es/consultoria-power-bi

 

Saludos!


Juan-Power-bi
Resident Rockstar
Resident Rockstar

¡Hola! Lo que describes tiene una explicación muy concreta: ese producto número 72 existe en tu tabla de hechos pero no tiene un código de producto visible — es decir, tiene un valor en blanco o nulo en la columna de código.
Cuando pones el desglose por código en el visual, ese producto sin código no aparece como una fila (aunque actives "mostrar elementos sin datos", esa opción solo afecta a dimensiones relacionadas, no a blancos dentro de la misma tabla). Por eso el conteo total baja a 71.
Para confirmarlo, prueba esta medida:
daxProductos sin código =
CALCULATE(
DISTINCTCOUNT('TuTabla'[CodigoProducto]),
'TuTabla'[CodigoProducto] = BLANK()
)
Si devuelve 1, ese es tu producto fantasma.
La solución depende de qué quieras hacer: si los blancos son válidos y quieres contarlos, usa DISTINCTCOUNT (que sí cuenta blancos a diferencia de DISTINCTCOUNTNOBLANK) y en el visual muestra una fila para "(En blanco)". Si son errores de datos, lo mejor es limpiarlos en Power Query asignándoles un código como "SIN CÓDIGO" para que aparezcan visualmente.

Helpful resources

Announcements
April Power BI Update Carousel

Power BI Monthly Update - April 2026

Check out the April 2026 Power BI update to learn about new features.

Fabric SQL PBI Data Days

Data Days 2026 coming soon!

Sign up to receive a private message when registration opens and key events begin.

New to Fabric survey Carousel

New to Fabric Survey

If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.

Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.