Uma função que utilizo bastante é mostrar números em formato contábil com separador de milhar.
Code: Select all
#Requires AutoHotKey v2.0
; Retorna um número formatado com separador ponto milhar.
; Entrada => Número nativo AutoHotkey ou número no padrão brasileiro
; Casas decimais => Quantidade de casas decimais a ser exibidas, por padrão são duas
; Saida => String no formato brasileiro com ponto de milhar Ex 1.234,56
milhar(num:=0, dec:=2)
{
; Se não for um número nativo do AutoHotKey, será convertido e se for uma string vazia retornará 0
if !(IsNumber(num))
num := StrReplace(StrReplace(num ? num : 0, "."), ",", ".")
; Arredonda o número para a quantidade de casas decimais, converte para formato brasileiro e executa a RegEx de formatação
Return RegExReplace(StrReplace(Round(num, dec), ".", ","), "\d(?=(\d{3})+(\D))", "$0.")
}