A função `FormatCurrency` em VBA é usada para formatar um número como uma representação de moeda de acordo com as configurações regionais do sistema ou com parâmetros especificados. Ela é muito útil quando você precisa exibir valores monetários em um formato adequado dentro de suas aplicações VBA, como em um formulário do Excel ou Access.
A sintaxe básica da função `FormatCurrency` é a seguinte:
FormatCurrency(Expression, [NumDigitsAfterDecimal], [IncludeLeadingDigit], [UseParensForNegativeNumbers], [GroupDigits])
Aqui está uma breve explicação sobre cada parâmetro:
- `Expression`: Obrigatório. O valor numérico que você deseja formatar como moeda.
- `NumDigitsAfterDecimal`: Opcional. Indica o número de casas decimais a serem exibidas. O padrão é -1, o que significa que a configuração regional do sistema será usada.
- `IncludeLeadingDigit`: Opcional. Indica se um zero inicial deve ser exibido para frações menores que 1. Use `vbTrue`, `vbFalse`, ou `vbUseDefault`.
- `UseParensForNegativeNumbers`: Opcional. Indica se números negativos devem ser representados entre parênteses. Use `vbTrue`, `vbFalse`, ou `vbUseDefault`.
- `GroupDigits`: Opcional. Indica se os números devem ser agrupados usando o separador de milhar. Use `vbTrue`, `vbFalse`, ou `vbUseDefault`.
Exemplo de uso:
Sub ExemploFormatCurrency()
Dim preco As Double
Dim precoFormatado As String
preco = 12345.6789
' Formata o número como moeda com configurações padrão
precoFormatado = FormatCurrency(preco)
MsgBox "Preço formatado (padrão): " & precoFormatado
' Formata o número como moeda com 2 casas decimais
precoFormatado = FormatCurrency(preco, 2)
MsgBox "Preço formatado (2 casas decimais): " & precoFormatado
' Formata o número como moeda, sem zero à esquerda, e com parênteses para números negativos
precoFormatado = FormatCurrency(preco, 2, vbFalse, vbTrue)
MsgBox "Preço formatado (sem zero e com parênteses): " & precoFormatado
End Sub
Nesse exemplo, o valor `12345.6789` é formatado como uma moeda usando diferentes configurações. O resultado é exibido em caixas de mensagem (`MsgBox`). O uso dos parâmetros adicionais permite personalizar a apresentação conforme necessário.