Número do formato VBA do Excel

O VBA vem com uma função integrada para formatação de números. O nome dessa função embutida é "Format Number". Esta função formata o número específico em um formato exigido pelo usuário.
Antes de prosseguirmos, vamos primeiro entender o que é a formatação de números. A formatação de números basicamente significa que o número específico deve ser mostrado de uma maneira específica. Por exemplo, se você deseja ver um número específico em termos de duas casas decimais (150, 55) ou deseja ver o mesmo número em termos de nenhuma casa decimal (150). Estes são apenas exemplos. Basicamente, podemos categorizar essas formatações numéricas em quatro categorias.

  • Pontos decimais
  • Números negativos entre parênteses
  • Dígitos iniciais
  • Dígitos do grupo

Vamos aprender todas as formatações no VBA com a ajuda de exemplos. Mas primeiro, vamos dar uma olhada na sintaxe da função VBA para o número do formato.

Portanto, como você pode ver a sintaxe da função VBA para o número do formato na captura de tela acima, vamos quebrar essa função e entender todas as partes da função.

  1. Expressão: Como você pode ver, a primeira parte da função é uma expressão que nada mais é do que o número que queremos Formatar.
  2. Num dígito após o decimal: a segunda parte da função solicita o número de dígitos do número que você deseja ver após o ponto decimal.
  3. Dígito inicial: útil quando o número está entre -1 e 1, o que significa que o número é maior que -1 e menor que 1. Por exemplo 0, 25.

Portanto, se você deseja ver o valor zero antes do ponto decimal, é necessário inserir o argumento na função como TRUE ou -1. O resultado será 0, 55.

Mas se você inserir o valor no argumento como FALSE ou 0, o resultado será 0, 55.

  1. Usar pai para números negativos : esta parte é usada para números negativos. Se você quiser ver os números negativos entre parênteses, deverá apresentar um argumento como TRUE ou -1 e o resultado será (156). Mas quando você fornece o argumento como FALSE ou 0, o resultado será -156.
  2. Dígitos do grupo : Esta é a última parte da função usada para os mil separadores. Portanto, se você quiser ver os números com um separador de milhar, forneça o argumento como TRUE ou -1 e o resultado será 52.000. Mas se você fornecer o mesmo argumento que FALSE ou 0, o resultado será 52000.

Como formatar o número usando o código VBA?

Agora, ao entender as diferentes formas de Formatação de Números e a função incorporada do VBA no formato de Número, podemos ir adiante e ver como podemos usar isso com a ajuda de exemplos.

Você pode baixar este modelo de Excel de número de formato VBA aqui - Modelo de Excel de número de formato VBA

Antes de ir para os exemplos, siga as etapas básicas abaixo se você não conhece a macro VBA. Você pode inserir os códigos abaixo no módulo VBA.

Etapa 1: Crie um nome de macro que seja a primeira linha do código, como você pode ver na captura de tela.

Etapa 2: Declare uma das variáveis ​​como String, porque o resultado fornecido pela função de número do formato VBA é String.

Código:

 Sub Format_Number_Example1 () Dim MyNum As String End Sub 

Agora podemos continuar com nossos exemplos.

Pontos decimais - exemplo # 1

Suponha que estamos trabalhando com o número 56456 e você deseja ver dois números após o ponto decimal.

Etapa 1: no código, você pode adicionar a função embutida do VBA como abaixo.

Mynum = Formatnumber (

Etapa 2: Como você sabe, o primeiro passo da função é a expressão que nada mais é do que o número que você deseja formatar. 56456 no nosso caso.

Mynum = Formatnumber (56456,

Passo 3: O próximo passo é Numdigitafterdecimal, que nada mais é do que o número de dígitos que você deseja ver após o ponto decimal que é 2 no nosso caso.

Código:

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

Etapa 4 : a próxima etapa é mostrar o número em uma caixa de mensagem. O VBA possui uma função integrada para mostrar o valor em uma caixa de mensagem que é MSGBOX.

Então, você só precisa inserir o código abaixo depois de inserir a função do número do formato para MyNum.

Código:

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

Como você pode ver, a última linha do código é End Sub, o que significa que o código VBA para a macro termina depois disso.

Etapa 6: quando a codificação do número do formato terminar, você poderá executar a macro e poderá ver o resultado abaixo após executar a macro.

Mil Separadores - Exemplo # 2

Agora suponha que com o mesmo exemplo, precisamos mostrar o mesmo número 56456 com mil separadores. Nesse caso, precisamos fornecer o último argumento como "vbTrue", como mostrado na captura de tela abaixo.

Código:

Sub Format_Number_Example2 ()

Dim MyNum As String

MyNum = FormatNumber (56456, 2,,, vbTrue)

MsgBox MyNum

End Sub

Depois de executar a macro, você poderá ver o resultado abaixo.

Se você selecionar “vbFalse” como o último argumento, o número não será mostrado como separador de milhar.

Mostrar número negativo entre parênteses - exemplo # 3

Suponha que o mesmo número 56456 no exemplo acima seja negativo e você precise mostrar os números negativos entre colchetes; o quarto argumento da função deve ser “vbTrue”, como mostra a captura de tela abaixo.

Código:

 Sub Format_Number_Example3 () Dim MyNum As String MyNum = FormatNumber (-56456, 2,, vbTrue, vbTrue) MsgBox MyNum End Sub 

Como você pode ver, o quarto e o quinto argumento no código são "vbTrue", o que significa que a formatação para número negativo (quarto argumento) e formatação para mil separadores (quinto argumento) são ambas verdadeiras. Então você verá o número negativo dentro de um colchete e com mil separadores, como mostra a captura de tela abaixo.

Formatação para número entre -1 e 1 - Exemplo # 4

Suponha que o número seja 0, 567, que está entre -1 e 1, então você tem duas opções para formatar o número. A primeira opção é mostrar zero antes do ponto decimal ou não mostrar zero antes do ponto decimal.

Se você escolher a opção de mostrar zero antes do ponto decimal, deverá fornecer o terceiro argumento na função como "vbTrue", como mostra a captura de tela abaixo.

Código:

 Sub Format_Number_Example4 () Dim MyNum As String MyNum = FormatNumber (0.567, 2, vbTrue, vbTrue, vbTrue) MsgBox MyNum End Sub 

Você poderá ver o resultado abaixo depois de executar o código da macro.

Como você pode ver, o resultado está mostrando apenas dois dígitos após o ponto decimal, porque fornecemos apenas 2 como o segundo argumento na função.

Se você selecionar o terceiro argumento como "vbFalse", como mostra a captura de tela abaixo.

Código:

 Sub Format_Number_Example5 () Dim MyNum As String MyNum = FormatNumber (0.567, 2, vbFalse, vbTrue, vbTrue) MsgBox MyNum End Sub 

Então você não verá o zero antes do ponto decimal, como mostra a captura de tela abaixo.

Coisas para lembrar

  • A Função FormatNumber do VBA possui 5 argumentos, portanto, forneça os argumentos corretos na ordem da função. Temos que seguir a ordem da função, não há outra saída.
  • Se você mantiver algum argumento em branco, ele considerará automaticamente a opção padrão do VBA.
  • Tenha cuidado com os argumentos vbTrue e vbFalse nos últimos três argumentos para formatação de números.
  • Para o primeiro argumento que é a expressão, você também pode fornecer a referência de célula na planilha do Excel em vez de qualquer número.

Artigos recomendados

Este é um guia para o número do formato VBA. Aqui discutimos como formatar números no Excel usando o código VBA, além de exemplos práticos e modelo de excel para download. Você também pode consultar nossos outros artigos sugeridos -

  1. Como usar a função VBA TRIM?
  2. Matrizes VBA | Tutorial completo
  3. Como usar o VBA Select Case?
  4. Função de localização do VBA do Excel

Categoria: