INTRODUÇÃO E CASO DE USO
No Power BI não conseguimos selecionar a coluna inteira e ver o número de linhas da tabela. Para o fazer, teríamos de exportar os dados para Excel e contar selecionando a coluna.
No cenário, temos uma tabela com várias colunas e, quando arrasto as colunas para o visual de tabela, vejo os valores agrupados pelas colunas selecionadas. Mas quando tento obter o número de linhas na coluna agrupada surge o verdadeiro problema.
A função COUNTROWS() funciona de forma diferente e não devolve o resultado esperado.
A função RANK() tem outro problema: ou gera empates, ou, quando os valores são filtrados, não devolve o resultado esperado.
POWER BI CONCAT()
Usar a função CONCAT é a melhor forma de obter corretamente o número total de linhas num visual de tabela.
Os passos abaixo permitem obter o número total de linhas no visual de tabela, mesmo aplicando filtros.
- Use a função CONCAT() com todas as combinações possíveis de colunas.
- Se a tabela tiver mais de 2 combinações possíveis, use o símbolo & entre as colunas.
- Depois de criada a coluna calculada, arraste-a para o fim dos valores do visual de tabela.
- Por fim, mude o valor da coluna para Count (distinct) no menu de valores.
Exemplo de resultado:
O relatório abaixo foi criado com dados de exemplo que mostram como aplicar a lógica.
Tabela Person:

Desenho do relatório:

Resultado incorreto 1: com COUNTROWS() – usando Count
O resultado esperado para o número total de linhas é 4.

Resultado incorreto 2: com COUNTROWS() – usando Count (Distinct)
O resultado esperado para o número total de linhas é 4.


Resultado correto 1: com CONCAT() – usando Count (Distinct)
O resultado abaixo dá o valor esperado correto: 4.


Resultado correto 2: com CONCAT() – usando Count (Distinct)
O resultado abaixo dá o valor esperado correto: 2, usando valores filtrados.
Fórmula usada para CONCAT():
Concat = CONCATENATE(Person[Column1]&Person[Column2],Person[Column4])
Conclusão:
Este caso de uso foca-se no número total de linhas quando os valores estão agrupados e há filtros aplicados — a função CONCAT() dá exatamente o resultado esperado, mesmo com filtro. O mesmo não é possível com RANK(), COUNTROWS() ou COUNT por coluna.
