formatNumber
Formata um número como texto: moeda, milhar, casas decimais, zeros à esquerda, percentual. Com a cultura pt-BR, usa o ponto como separador de milhar e a vírgula como decimal. O resultado é texto, não número.
Sintaxe
formatNumber(número, formato, [cultura])
Exemplos testados
| Expressão | Resultado |
|---|---|
formatNumber(float(replace(replace('1.234,56', '.', ''), ',', '.')), 'N2', 'pt-BR')ida e volta do padrão brasileiro | 1.234,56 |
formatNumber(div(float(123456789), 100), 'N2', 'pt-BR') | 1.234.567,89 |
formatNumber(1234.5, 'N2', 'en-US') | 1,234.50 |
formatNumber(1234.5, 'C2', 'pt-BR') | R$ 1.234,50 |
formatNumber(1234.5678, '#,##0.00', 'pt-BR') | 1.234,57 |
formatNumber(0.256, 'P1', 'pt-BR') | 25,6% |
formatNumber(7, '000')zeros à esquerda | 007 |
formatNumber(-1234.5, 'N2', 'pt-BR') | -1.234,50 |
formatNumber(3.14159, 'N2')sem cultura, o ponto é decimal | 3.14 |
formatNumber(2.5, 'F0')arredondamento de metade | 2 |
formatNumber(3.5, 'F0') | 4 |
formatNumber(0.125, '0.00') | 0.13 |
formatNumber(2.675, 'F2') | 2.67 |
Quando usar
Use formatNumber para apresentar valores: moeda em e-mails e aprovações ('C2' com pt-BR dá R$ 1.234,50), percentuais em relatórios e códigos com zeros à esquerda ('00000'). Faça as contas antes, com números, e formate só no final, porque o resultado é texto e não entra mais em add ou mul sem conversão. Para dinheiro, evite depender do arredondamento do formato: calcule em centavos inteiros, converta para reais só na apresentação e, se precisar de duas casas, formate um valor que já tenha exatamente duas casas.
Armadilhas
- Devolve texto. Para continuar calculando, converta de volta (e cuidado com a vírgula: veja int e float).
- Uma letra só é formato padrão, e '0' sozinho falha. Use
'F0','0.00'ou'000'. - O arredondamento de metades não é uniforme.
F0de 2,5 dá 2 e de 3,5 dá 4, enquanto'0.00'de 0,125 dá 0,13 eF2de 2,675 dá 2,67. Para dinheiro, calcule em centavos: veja o guia de parcelas. - Sem cultura, o separador decimal é o ponto.
Perguntas frequentes
Como gerar o código PAG-00042?
concat('PAG-', formatNumber(42, '00000')) devolve PAG-00042. Veja o guia do código sequencial.
Existe uma função de arredondar?
Não. O Power Automate não tem round; formatNumber arredonda só como efeito do formato.