Referência · DAX (Power BI)
DAX: a função FORMAT e o idioma do Power BI
A função FORMAT converte um valor em texto no formato que você escolher. É a ferramenta para mostrar datas, moeda, percentuais e números com zeros à esquerda, mas o resultado depende do idioma do sistema onde o Power BI roda. Os resultados abaixo foram obtidos no Power BI Desktop em um Windows em português do Brasil.
Cada resultado desta página foi obtido executando a expressão no motor do Power BI Desktop (Analysis Services 17.0.57.16), em um Windows em português do Brasil. Um teste automático do Me Ajuda Flow confere que o texto da página é idêntico ao valor registrado. As expressões usam a sintaxe padrão do DAX (vírgula entre argumentos e ponto decimal); o editor do Power BI Desktop pode mostrar os separadores da configuração regional do Windows.
Exemplos executados
| Expressão | Resultado | Observação |
|---|---|---|
FORMAT(1234.5, "#,##0.00") | "1.234,50" | Ponto de milhar e vírgula decimal, por causa do idioma. |
FORMAT(0.256, "0.0%") | "25,6%" | |
FORMAT(1234.5, "Currency") | "R$ 1.234,50" | O formato Currency usa o símbolo de moeda do idioma. |
FORMAT(DATE(2026, 11, 2), "dd/MM/yyyy") | "02/11/2026" | |
FORMAT(DATE(2026, 11, 2), "dddd, d ""de"" MMMM ""de"" yyyy") | "segunda-feira, 2 de novembro de 2026" | Texto fixo entre aspas dobradas dentro do formato. |
FORMAT(7, "000") | "007" | |
FORMAT(DATE(2026, 11, 2) + TIME(8, 5, 9), "HH:mm:ss") | "08:05:09" | |
FORMAT(DATE(2026, 11, 2) + TIME(8, 5, 9), "hh:mm:ss") | "08:05:09" | |
FORMAT(DATE(2026, 11, 2) + TIME(8, 5, 9), "dd/MM/yyyy mm") | "02/11/2026 11" | Neste formato o "mm" mostrou o mês (11), e não os minutos (05). |
Pegadinhas
- FORMAT devolve texto. Depois de formatar, o valor deixa de ser número ou data: não dá para somar, nem ordenar corretamente como data.
- O resultado depende do idioma. FORMAT(1234.5, "#,##0.00") mostrou 1.234,50 neste teste em português. Em um sistema em inglês, o esperado é 1,234.50 (não testado aqui).
- O "mm" é contextual. No teste, em "hh:mm:ss" ele mostrou os minutos (05), e em "dd/MM/yyyy mm" mostrou o mês (11). Prefira MM para mês e use mm só ao lado de hh.
- No Power Automate é diferente: o formatDateTime separa MM (mês) de mm (minuto) de forma fixa, e o idioma é um parâmetro explícito.
Quando usar
- Para exibir um rótulo (um título, uma legenda) com a data ou o valor formatado.
- Não use FORMAT em uma coluna que será usada para filtrar ou ordenar datas; prefira a coluna de data original com o formato do modelo.
Perguntas frequentes
Como forçar o formato brasileiro?
O FORMAT segue o idioma do sistema, que pode ser configurado no Windows e no modelo. Há também um parâmetro opcional de idioma na função (veja a documentação).
FORMAT é igual ao formatDateTime do Power Automate?
Não. Os códigos de formato têm diferenças (como o "mm" contextual do DAX) e o idioma é tratado de outra forma. Confira o resultado em cada ferramenta.