A função `FormatNumber` em VBA (Visual Basic for Applications) é usada para formatar números de acordo com as especificações fornecidas, como o número de casas decimais, se o separador de milhares deve ser usado e como os números negativos devem ser tratados. A sintaxe da função `FormatNumber` é a seguinte:
FormatNumber(Expression, [NumDigitsAfterDecimal], [IncludeLeadingDigit], [UseParensForNegativeNumbers], [GroupDigits])
Aqui está uma explicação de cada parâmetro:
- Expression: Obrigatório. A expressão numérica que você deseja formatar.
- NumDigitsAfterDecimal: Opcional. Indica o número de casas decimais a serem exibidas. O padrão é -1, que usa a configuração regional do sistema.
- IncludeLeadingDigit: Opcional. Indica se uma casa decimal deve ter um zero à esquerda quando o valor for menor que 1. Use as constantes `vbTrue` (-1) para incluir ou `vbFalse` (0) para não incluir. O padrão é `vbUseDefault`, que usa a configuração regional do sistema.
- UseParensForNegativeNumbers: Opcional. Indica se números negativos devem ser colocados entre parênteses. Use `vbTrue` ou `vbFalse`. O padrão é `vbUseDefault`.
- GroupDigits: Opcional. Indica se os números devem ser agrupados usando o separador de milhares. Use `vbTrue` ou `vbFalse`. O padrão é `vbUseDefault`.
Aqui está um exemplo de como usar `FormatNumber`:
Sub ExemploFormatNumber()
Dim numero As Double
Dim numeroFormatado As String
numero = -12345.6789
' Formatando o número para ter 2 casas decimais, um zero à esquerda,
' usando parênteses para negativos, e agrupamento de milhares
numeroFormatado = FormatNumber(numero, 2, vbTrue, vbTrue, vbTrue)
MsgBox numeroFormatado ' Resultado: "(12,345.68)"
End Sub
Neste exemplo, o número `-12345.6789` é formatado para exibir duas casas decimais, incluir um zero à esquerda, colocar números negativos entre parênteses, e usar o separador de milhares. Ajuste os parâmetros conforme necessário para atender às suas necessidades específicas de formatação.