Número do formato VBA

A função de formatação em VBA é usada para formatar os valores dados no formato desejado, esta função tem basicamente dois argumentos obrigatórios, um é a entrada que é tomada na forma de uma string e o segundo argumento é o tipo de formato que queremos usar por exemplo, se usarmos Formato (0,99, “Porcentagem”), o resultado será 99%.

Número do formato em VBA Excel

O VBA está muito à frente das funções regulares do Excel. O VBA tem muitas de suas próprias funções integradas, assim como temos mais de 500 funções na planilha. Uma dessas fórmulas no VBA é “Format Number”.

Sim, você ouviu direito, temos uma função chamada “FormatNumber” em VBA. Neste artigo, faremos um tour completo exclusivo desta função.

Como formatar números com VBA NumberFormat?

Como o próprio nome da função diz, ela formatará o número fornecido de acordo com as instruções de formatação fornecidas pelo usuário.

A formatação de números nada mais é do que adicionar pontos decimais, colocar números negativos entre parênteses, mostrar zeros à esquerda para valores decimais, etc. Usando a função VBA  FormatNumber , podemos aplicar o estilo de formatação aos números com os quais trabalhamos. Abaixo está a sintaxe da função

  • Expressão: isso nada mais é do que o número que precisamos formatar.
  • Num Dígitos Após Decimal: Quantos dígitos você deseja para a posição decimais para o lado direito do número.
  • Incluir dígito inicial: o dígito inicial nada mais é do que dígitos antes do início do número. Isso é aplicável para os valores menores que 1, mas maiores que -1.
    • Se você quiser mostrar zero antes do valor decimal, pode passar o argumento como TRUE ou -1 e o resultado será. “0.55”
    • Se você não quiser mostrar zero antes do valor decimal, pode passar o argumento como FALSO ou 0 e o resultado será “.55”
    • Por padrão, o valor será -2, ou seja, as configurações regionais do computador.
  • Use Pais para Números Negativos: Se você deseja mostrar os números negativos entre parênteses, você pode passar o argumento como VERDADEIRO ou -1 e o resultado será. “(255)”
    • Se você deseja mostrar os números negativos sem parênteses, pode passar o argumento como FALSO ou 0 e o resultado será. “-255”
  • Dígitos de grupo: Se você deseja adicionar um separador de mil ou não. Se sim TRUE ou -1 é o argumento, se não FALSE ou 0 é o argumento. Por padrão, o valor é -2, ou seja, igual às configurações regionais do computador.

Exemplos de função Excel VBA FormatNumber

Veremos os exemplos práticos da função Número do formato VBA do Excel. Vamos executar cada argumento separadamente.

Para isso, crie o nome da macro e declare uma das variáveis ​​como string. A razão pela qual precisamos declarar a variável como uma string, porque o resultado fornecido pela função VBA FormatNumber é apenas como String.

Você pode baixar este modelo de função de número de formato VBA aqui - Modelo de função de número de formato VBA

Código:

 Sub Format_Number_Example1 () Dim MyNum As String End Sub 

Exemplo # 1 - Adicionar pontos decimais na frente do número

Etapa # 1 - Suponha que estivemos trabalhando com o número 25000 e precisamos formatá-lo e adicionar pontos decimais à direita do número. Atribua um valor à nossa variável.

Código:

 Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (End Sub 

Etapa 2 - O  primeiro é a expressão, ou seja, qual é o número que precisamos formatar, então nosso número é 25000.

Código:

 Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (25000, End Sub 

Etapa # 3 -  Em seguida, quantos dígitos precisamos adicionar, ou seja, 2 dígitos.

Código:

 Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (25000, 2) End Sub 

Etapa 4 -  Mostrar o valor da variável na caixa de mensagem do VBA.

Código:

 Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (25000, 2) MsgBox MyNum End Sub 

Etapa # 5 -  O resultado desta macro é assim.

Podemos ver duas casas decimais à direita do número.

Exemplo # 2 - Número do grupo, ou seja, separador de milhar

Para o mesmo número, podemos adicionar ou excluir mil separadores. Se quisermos mostrar mil separadores, precisamos selecionar vbTrue para o último argumento.

Código:

 Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (25000, 2,,, vbTrue) MsgBox MyNum End Sub 

Isso vai lançar o resultado assim.

Agora, se selecionar vbFalse , não obteremos mil separadores.

Código:

 Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (25000, 2,,, vbFalse) MsgBox MyNum End Sub 

O resultado deste código assim.

Se eu selecionar vbUseDefault , obteremos o resultado de acordo com a configuração do sistema. Abaixo está o resultado disso.

Portanto, a configuração do meu sistema tem mil separadores por padrão.

Exemplo # 3 - Coloque parênteses para números negativos

Se tivermos um número negativo, podemos mostrar o número negativo entre parênteses. Precisamos selecionar vbTrue em “Use Parents for Negative Numbers”.

Código:

 Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (-25000, 2,, vbTrue) MsgBox MyNum End Sub 

Agora o resultado é assim.

Se selecionarmos vbFalse , obteremos um número negativo com um sinal de menos.

Código:

 Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (-25000, 2,, vbFalse) MsgBox MyNum End Sub 

Agora o resultado é assim.