VBA

Números por Extenso Excel: Como Converter?

Você quer aprender a colocar números por extenso no Excel? Então, está no lugar certo!

Embora não sejam usados com tanta frequência no dia a dia, os números por extenso são essenciais em documentos como cheques, recibos e declarações formais. Se você pesquisou “como converter número em extenso no Excel“, é porque precisa desse recurso — e a boa notícia é: sim, é possível fazer isso no Excel com VBA!

Neste tutorial, você vai aprender como criar uma função personalizada no Excel para transformar qualquer número em seu equivalente por extenso. É fácil, rápido e funciona perfeitamente em versões do Excel para Windows.

Como converter números por extenso no Excel usando o VBA

Para converter números por extenso no Excel iremos criar uma função (semelhante aquelas que você já conhece como PROCV, SOMASE, etc). Para isso, siga as etapas abaixo:

Passo 1: Acesse o Editor VBA

Abra a sua planilha onde você irá realizar a conversão dos números. Acesse a guia Desenvolvedor > Visual Basic. (Se preferir, use o atalho ALT + F11). Caso não tenha a guia Desenvolvedor Habilitada no seu Excel, veja aqui como você pode habilitá-la.

Passo 2: Insira um Módulo

No painel do Visual Basic, escolha a opção Inserir > Módulo.

Converter números por extenso no Excel

Passo 3: Cole o Código da Função

Copie o código abaixo e cole no módulo criado. Observe que o nome da nossa função é “Converter_numero“. Usaremos esse nome para chamar a função na hora de realizar a conversão dos números.

Function Converter_numero(valor As Double) As String
 Dim strMoeda As String
 Dim cents As Variant
 Dim decimalSep As String

' Se o valor for igual ou maior que 1 quatrilhao
' passar erro e sair da funcao
 If valor > 999999999999999# Then
 Converter_numero = "Valor excede 999.999.999.999.999"
 Exit Function
 End If

' Se valor for igual a 1, a unidade está no singular
 If WorksheetFunction.RoundDown(valor, 0) = 1 Then
' a string da moeda no singular
 strMoeda = " real"
' Se for maior que 1 a unidade está no plural
 ElseIf WorksheetFunction.RoundDown(valor, 0) > 1 Then
 strMoeda = " reais"
 End If
 
' Remove os centavos
 cents = valor - WorksheetFunction.RoundDown(valor, 0)
' Remove os centavos do valor
 valor = valor - CDbl(cents)
' Passo o extenso dos centavos
 cents = centavos(CDbl(cents) * 100)
' End If
' Caso a string seja diferente de branco e valor seja maior ou igual a 1
 If cents <> "" And valor >= 1 Then
' acrescentar uma vírgula antes do extenso
 cents = " e " & cents
 End If
' Iniciar o processo de conversao dos valores longos
 strMoeda = Trim(Trilhoes(valor)) & strMoeda & cents
 strMoeda = Replace(strMoeda, ", e", " e")
 strMoeda = Replace(strMoeda, ", r", " r")
 If Left(strMoeda, 2) = "e " Then
 strMoeda = Mid(strMoeda, 3, Len(strMoeda))
 'ElseIf Left(strMoeda, 5) = "mil e" Then
 ' strMoeda = Mid(strMoeda, 5, Len(strMoeda))
 End If
 vzz = "00000000000000000000"
 vtam = Len(Trim(Mid(Trim(valor), 2, 100)))
 If Right(vzz + vzz + vzz + vzz, vtam) = Mid(Trim(valor), 2, 100) And InStr(UCase(strMoeda), UCase("es ")) > 0 Then
 vetor = Split(strMoeda, " ")
 vtrocar = vetor(UBound(vetor))
 strMoeda = Replace(strMoeda, vtrocar, "de " + vtrocar)
 End If
 
 Converter_numero = strMoeda
End Function

Private Function centavos(valor As Double) As String
 Dim dezena As Integer
 Dim unidade As Integer
 
' Passa o valor para base decimal
 valor = Round(CDbl(valor / 100), 2)

' Se for um centavo, escrever valor e sair da funcao
 If valor = 0.01 Then
 centavos = "um centavo"
 Exit Function
 End If
 
' Repassa valor para dezenas
 valor = valor * 100

' Se nao houver dezenas no valor passado
 If dezenas(valor) = "" Then
' a string centavos fica em branco
 centavos = ""
 Else
' caso contrário, passar extenso das dezenas e concatenar
' com a palavra centavos
 centavos = dezenas(valor) & " centavos"
 End If

End Function

Private Function unidades(unidade As Double) As String
 Dim unid(9)
' Define as unidades a serem usadas
 unid(1) = "um": unid(6) = "seis"
 unid(2) = "dois": unid(7) = "sete"
 unid(3) = "três": unid(8) = "oito"
 unid(4) = "quatro": unid(9) = "nove"
 unid(5) = "cinco"

' Retorna a string referente a unidade passada para
' esta funcao
 unidades = Trim(unid(unidade))
End Function

Private Function dezenas(dezena As Double) As String
 Dim dezes(9)
 Dim dez(9)
 Dim intDezena As Double
 Dim intUnidade As Double
 Dim tmpStr As String

' Define as dezenas a serem utilizadas
 dezes(1) = "onze": dezes(6) = "dezesseis"
 dezes(2) = "doze": dezes(7) = "dezessete"
 dezes(3) = "treze": dezes(8) = "dezoito"
 dezes(4) = "quatorze": dezes(9) = "dezenove"
 dezes(5) = "quinze"
 
 dez(1) = "dez": dez(6) = "sessenta"
 dez(2) = "vinte": dez(7) = "setenta"
 dez(3) = "trinta": dez(8) = "oitenta"
 dez(4) = "quarenta": dez(9) = "noventa"
 dez(5) = "cinquenta"
 
' Calcula o inteiro da dezena
 intDezena = Int(dezena / 10)
' Calcula o inteiro da unidade
 intUnidade = dezena Mod 10
' Se o inteiro da dezena for zero
 If intDezena = 0 Then
' dezenas sao iguais as unidades
 dezenas = unidades(intUnidade)
 Exit Function
 Else:
' caso contrário, é igual a dez
 dezenas = dez(intDezena)
 End If

' Se o inteiro da dezena for igual a 1 e
' o inteiro da unidade for zero, os valores estao
' entre 11 e 19
 If (intDezena = 1 And intUnidade > 0) Then
 dezenas = dezes(intUnidade)
 Else
' Caso contrário, valor está entre 20 e 90 inclusive
 If (intDezena > 1 And intUnidade > 0) Then
' Concatena a string da dezena com a string da unidade
 dezenas = dezenas & " e " & unidades(intUnidade)
 End If
 End If
 dezenas = dezenas
End Function

Private Function centenas(centena As Double) As String
 Dim tmpCento As Double
 Dim tmpDez As Double
 Dim tmpUni As Double
 Dim tmpUniMod As Double
 Dim tmpModDez As Double
 Dim centoString As String
 Dim cento(9)

' Define as centenas
 cento(1) = "cento": cento(6) = "seiscentos"
 cento(2) = "duzentos": cento(7) = "setecentos"
 cento(3) = "trezentos": cento(8) = "oitocentos"
 cento(4) = "quatrocentos": cento(9) = "novecentos"
 cento(5) = "quinhentos"
 
' Calcula o inteiro da centena
 tmpCento = Int(centena / 100)
' Calcula a parte da dezena
 tmpDez = centena - (tmpCento * 100)
' Calcula o inteiro da unidade
 tmpUni = Int(tmpDez / 10)
' Calcula o resto da unidade
 tmpUniMod = tmpUni Mod 10
' Calcula o resto da dezena
 tmpModDez = tmpDez Mod 10
' Se centena for cem, definir string como "cem " e sair
 If centena = 100 Then
 centoString = "cem "
 Else
' Caso contrário definir a string da centena
 centoString = cento(tmpCento)
 End If
' Avalia se a unidade é maior ou igual a zero, se o resto da unidade é igual ou
' maior que zero, se a dezena é maior ou igual a um e se a centena é igual ou
' maior que 1. Se forem verdadeiros; entao, adicionar " e " a string da centena
 If (tmpUni >= 0 And tmpUniMod >= 0 And tmpDez >= 1 And tmpCento >= 1) Then
 centoString = centoString & " e "
 End If
' Concatena a string do cento com a string da dezena
 centenas = Trim(centoString & dezenas(tmpDez))
End Function

Private Function milhares(milhar As Double) As String
 Dim tmpMilhar As Double
 Dim tmpCento As Double
 Dim milString As String
 
' Calcula o inteiro da milhar
 tmpMilhar = Int(milhar / 1000)
' Calcula o cento dentro da milhar
 tmpCento = milhar - (tmpMilhar * 1000)
' Se milhar for zero, entao a string da milhar fica em branco
 If tmpMilhar = 0 Then milString = ""
' Se for igual a 1, entao
 ' If '(tmpMilhar = 1) Then
' string da milhar é igual a unidade e "mil"
 'milString = unidades(tmpMilhar) & "um mil "
' se maior que 1 e menor que dez, string igual a unidades
 If (tmpMilhar >= 1 And tmpMilhar < 10) Then
 milString = unidades(tmpMilhar) & " mil, "
' Se for entre 10 e 100, entao string igual a dezenas
 ElseIf (tmpMilhar >= 10 And tmpMilhar < 100) Then
 milString = dezenas(tmpMilhar) & " mil, "
' Se for entre 100 e 1000, entao igual string centenas
 ElseIf (tmpMilhar >= 100 And tmpMilhar < 1000) Then
 milString = centenas(tmpMilhar) & " mil, "
 End If
 'If tmpCento = 1 Then milString = " e "
 If (tmpCento >= 1 And tmpCento <= 100) Then milString = milString & "e "
 milhares = Trim(milString & centenas(tmpCento))
End Function

Private Function milhoes(milhao As Double) As String
' Ver comentários para milhares acima
 Dim tmpMilhao As Double
 Dim tmpMilhares As Double
 Dim miString As String
 
 tmpMilhao = Int(milhao / 1000000)
 tmpMilhares = milhao - (tmpMilhao * 1000000)
 If tmpMilhao = 0 Then miString = ""
 If (tmpMilhao = 1) Then
 miString = unidades(tmpMilhao) & " milhão, "
 ElseIf (tmpMilhao > 1 And tmpMilhao < 10) Then
 miString = unidades(tmpMilhao) & " milhões, "
 ElseIf (tmpMilhao >= 10 And tmpMilhao < 100) Then
 miString = dezenas(tmpMilhao) & " milhões, "
 ElseIf (tmpMilhao >= 100 And tmpMilhao < 1000) Then
 miString = centenas(tmpMilhao) & " milhões, "
 End If
 If milhao = 1000000# Then miString = "um milhão de "
 milhoes = Trim(miString & milhares(tmpMilhares))
End Function

Private Function bilhoes(bilhao As Double) As String
' Ver comentários para milhares acima
 Dim tmpBilhao As Double
 Dim tmpMilhao As Double
 'Dim tmpMilhoes As Double
 Dim biString As String
 
 tmpBilhao = Int(bilhao / 1000000000)
 tmpMilhao = bilhao - (tmpBilhao * 1000000000)
 If (tmpBilhao = 1) Then
 biString = unidades(tmpBilhao) & " bilhão, "
 ElseIf (tmpBilhao > 1 And tmpBilhao < 10) Then
 biString = unidades(tmpBilhao) & " bilhões, "
 ElseIf (tmpBilhao >= 10 And tmpBilhao < 100) Then
 biString = dezenas(tmpBilhao) & " bilhões, "
 ElseIf (tmpBilhao >= 100 And tmpBilhao < 1000) Then
 biString = centenas(tmpBilhao) & " bilhões, "
 End If
 If bilhao = 1000000000# Then biString = "um bilhão de "
 bilhoes = Trim(biString & milhoes(tmpMilhao))
End Function

Private Function Trilhoes(Trilhao As Double) As String
' Ver comentários para milhares acima
 Dim tmpTrilhao As Double
 Dim tmpBilhao As Double
 Dim triString As String
 
 tmpTrilhao = Int(Trilhao / 1000000000000#)
 tmpBilhao = Trilhao - (tmpTrilhao * 1000000000000#)
 If (tmpTrilhao = 1) Then
 triString = unidades(tmpTrilhao) & " trilhão, "
 ElseIf (tmpTrilhao > 1 And tmpTrilhao < 10) Then
 triString = unidades(tmpTrilhao) & " trilhões, "
 ElseIf (tmpTrilhao >= 10 And tmpTrilhao < 100) Then
 triString = dezenas(tmpTrilhao) & " trilhões, "
 ElseIf (tmpTrilhao >= 100 And tmpTrilhao < 1000) Then
 triString = centenas(tmpTrilhao) & " trilhões, "
 End If
 If Trilhao = 1000000000000# Then triString = "um trilhão de "
 Trilhoes = Trim(triString & bilhoes(tmpBilhao))
End Function

Function arredBaixo(valor)
 Dim tmpValor
 tmpValor = Round(CDbl(Right(Round(valor, 2) * 100, 2)) / 100, 2)
 arredBaixo = Round(Round(valor, 2) - tmpValor, 0)
End Function

'Créditos do código: ensinandoexcel.com.br




Passo 4 : Use a função diretamente na planilha

Depois de colar o código no módulo, volte para sua planilha e digite a fórmula:

=Converter_numero(A1)

Substitua A1 pela célula onde está o número que você deseja converter por extenso. Por exemplo: se A1 contém 123,45, o resultado será: “cento e vinte e três reais e quarenta e cinco centavos“.

Se você quiser que o resultado apareça com a primeira letra em maiúscula, pode usar a função PRI.MAIÚSCULA combinada com a função personalizada. Veja o exemplo abaixo:

=PRI.MAIÚSCULA(Converter_numero(A1))

Dica: você pode usar a função Converter_numero normalmente em outras células, copiar, colar ou até usar em conjunto com outras fórmulas do Excel.



Números por Extenso no Excel – Versão sem Moeda

Se você deseja exibir apenas o valor por extenso, sem a palavra “reais” ao final, pode usar uma variação da função que remove esse trecho do resultado. Essa versão é útil em documentos onde a moeda já está especificada no contexto, como contratos, recibos ou propostas comerciais. Para isto, utilize o código abaixo:

Function Converter_numero(valor As Double) As String
Dim strMoeda As String
Dim cents As Variant
Dim decimalSep As String

' Se o valor for igual ou maior que 1 quatrilhao
' passar erro e sair da funcao
If valor > 999999999999999# Then
Converter_numero = "Valor excede 999.999.999.999.999"
Exit Function
End If

' Remove os centavos
cents = valor - WorksheetFunction.RoundDown(valor, 0)
' Remove os centavos do valor
valor = valor - CDbl(cents)
' Passo o extenso dos centavos
cents = centavos(CDbl(cents) * 100)
' End If
' Caso a string seja diferente de branco e valor seja maior ou igual a 1
If cents <> "" And valor >= 1 Then
' acrescentar uma vírgula antes do extenso
cents = " e " & cents
End If

' Iniciar o processo de conversao dos valores longos
strMoeda = Trim(Trilhoes(valor)) & strMoeda & cents
strMoeda = Replace(strMoeda, ", e", " e")
strMoeda = Replace(strMoeda, ", r", " r")
If Left(strMoeda, 2) = "e " Then
strMoeda = Mid(strMoeda, 3, Len(strMoeda))
'ElseIf Left(strMoeda, 5) = "mil e" Then
' strMoeda = Mid(strMoeda, 5, Len(strMoeda))
End If
vzz = "00000000000000000000"
vtam = Len(Trim(Mid(Trim(valor), 2, 100)))
If Right(vzz + vzz + vzz + vzz, vtam) = Mid(Trim(valor), 2, 100) And InStr(UCase(strMoeda), UCase("es ")) > 0 Then
vetor = Split(strMoeda, " ")
vtrocar = vetor(UBound(vetor))
strMoeda = Replace(strMoeda, vtrocar, "de " + vtrocar)
End If

Converter_numero = strMoeda

End Function

Private Function centavos(valor As Double) As String
Dim dezena As Integer
Dim unidade As Integer

' Passa o valor para base decimal
valor = Round(CDbl(valor / 100), 2)

' Se for um centavo, escrever valor e sair da funcao
If valor = 0.01 Then
centavos = ""
Exit Function
End If

' Repassa valor para dezenas
valor = valor * 100

' Se nao houver dezenas no valor passado
If dezenas(valor) = "" Then
' a string centavos fica em branco
centavos = ""
Else
' caso contrário, passar extenso das dezenas e concatenar
' com a palavra centavos
centavos = dezenas(valor) & ""
End If

End Function

Private Function unidades(unidade As Double) As String
Dim unid(9)
' Define as unidades a serem usadas
unid(1) = "um": unid(6) = "seis"
unid(2) = "dois": unid(7) = "sete"
unid(3) = "três": unid(8) = "oito"
unid(4) = "quatro": unid(9) = "nove"
unid(5) = "cinco"

' Retorna a string referente a unidade passada para
' esta funcao
unidades = Trim(unid(unidade))
End Function

Private Function dezenas(dezena As Double) As String
Dim dezes(9)
Dim dez(9)
Dim intDezena As Double
Dim intUnidade As Double
Dim tmpStr As String

' Define as dezenas a serem utilizadas
dezes(1) = "onze": dezes(6) = "dezesseis"
dezes(2) = "doze": dezes(7) = "dezessete"
dezes(3) = "treze": dezes(8) = "dezoito"
dezes(4) = "quatorze": dezes(9) = "dezenove"
dezes(5) = "quinze"

dez(1) = "dez": dez(6) = "sessenta"
dez(2) = "vinte": dez(7) = "setenta"
dez(3) = "trinta": dez(8) = "oitenta"
dez(4) = "quarenta": dez(9) = "noventa"
dez(5) = "cinquenta"

' Calcula o inteiro da dezena
intDezena = Int(dezena / 10)
' Calcula o inteiro da unidade
intUnidade = dezena Mod 10
' Se o inteiro da dezena for zero
If intDezena = 0 Then
' dezenas sao iguais as unidades
dezenas = unidades(intUnidade)
Exit Function
Else:
' caso contrário, é igual a dez
dezenas = dez(intDezena)
End If

' Se o inteiro da dezena for igual a 1 e
' o inteiro da unidade for zero, os valores estao
' entre 11 e 19
If (intDezena = 1 And intUnidade > 0) Then
dezenas = dezes(intUnidade)
Else
' Caso contrário, valor está entre 20 e 90 inclusive
If (intDezena > 1 And intUnidade > 0) Then
' Concatena a string da dezena com a string da unidade
dezenas = dezenas & " e " & unidades(intUnidade)
End If
End If
dezenas = dezenas
End Function

Private Function centenas(centena As Double) As String
Dim tmpCento As Double
Dim tmpDez As Double
Dim tmpUni As Double
Dim tmpUniMod As Double
Dim tmpModDez As Double
Dim centoString As String
Dim cento(9)

' Define as centenas
cento(1) = "cento": cento(6) = "seiscentos"
cento(2) = "duzentos": cento(7) = "setecentos"
cento(3) = "trezentos": cento(8) = "oitocentos"
cento(4) = "quatrocentos": cento(9) = "novecentos"
cento(5) = "quinhentos"

' Calcula o inteiro da centena
tmpCento = Int(centena / 100)
' Calcula a parte da dezena
tmpDez = centena - (tmpCento * 100)
' Calcula o inteiro da unidade
tmpUni = Int(tmpDez / 10)
' Calcula o resto da unidade
tmpUniMod = tmpUni Mod 10
' Calcula o resto da dezena
tmpModDez = tmpDez Mod 10
' Se centena for cem, definir string como "cem " e sair
If centena = 100 Then
centoString = "cem "
Else
' Caso contrário definir a string da centena
centoString = cento(tmpCento)
End If
' Avalia se a unidade é maior ou igual a zero, se o resto da unidade é igual ou
' maior que zero, se a dezena é maior ou igual a um e se a centena é igual ou
' maior que 1. Se forem verdadeiros; entao, adicionar " e " a string da centena
If (tmpUni >= 0 And tmpUniMod >= 0 And tmpDez >= 1 And tmpCento >= 1) Then
centoString = centoString & " e "
End If
' Concatena a string do cento com a string da dezena
centenas = Trim(centoString & dezenas(tmpDez))
End Function

Private Function milhares(milhar As Double) As String
Dim tmpMilhar As Double
Dim tmpCento As Double
Dim milString As String

' Calcula o inteiro da milhar
tmpMilhar = Int(milhar / 1000)
' Calcula o cento dentro da milhar
tmpCento = milhar - (tmpMilhar * 1000)
' Se milhar for zero, entao a string da milhar fica em branco
If tmpMilhar = 0 Then milString = ""
' Se for igual a 1, entao
' If '(tmpMilhar = 1) Then
' string da milhar é igual a unidade e "mil"
'milString = unidades(tmpMilhar) & "um mil "
' se maior que 1 e menor que dez, string igual a unidades
If (tmpMilhar >= 1 And tmpMilhar < 10) Then
milString = unidades(tmpMilhar) & " mil, "
' Se for entre 10 e 100, entao string igual a dezenas
ElseIf (tmpMilhar >= 10 And tmpMilhar < 100) Then
milString = dezenas(tmpMilhar) & " mil, "
' Se for entre 100 e 1000, entao igual string centenas
ElseIf (tmpMilhar >= 100 And tmpMilhar < 1000) Then
milString = centenas(tmpMilhar) & " mil, "
End If
'If tmpCento = 1 Then milString = " e "
If (tmpCento >= 1 And tmpCento <= 100) Then milString = milString & "e "
milhares = Trim(milString & centenas(tmpCento))
End Function

Private Function milhoes(milhao As Double) As String
' Ver comentários para milhares acima
Dim tmpMilhao As Double
Dim tmpMilhares As Double
Dim miString As String

tmpMilhao = Int(milhao / 1000000)
tmpMilhares = milhao - (tmpMilhao * 1000000)
If tmpMilhao = 0 Then miString = ""
If (tmpMilhao = 1) Then
miString = unidades(tmpMilhao) & " milhão, "
ElseIf (tmpMilhao > 1 And tmpMilhao < 10) Then
miString = unidades(tmpMilhao) & " milhões, "
ElseIf (tmpMilhao >= 10 And tmpMilhao < 100) Then
miString = dezenas(tmpMilhao) & " milhões, "
ElseIf (tmpMilhao >= 100 And tmpMilhao < 1000) Then
miString = centenas(tmpMilhao) & " milhões, "
End If
If milhao = 1000000# Then miString = "um milhão de "
milhoes = Trim(miString & milhares(tmpMilhares))
End Function

Private Function bilhoes(bilhao As Double) As String
' Ver comentários para milhares acima
Dim tmpBilhao As Double
Dim tmpMilhao As Double
'Dim tmpMilhoes As Double
Dim biString As String

tmpBilhao = Int(bilhao / 1000000000)
tmpMilhao = bilhao - (tmpBilhao * 1000000000)
If (tmpBilhao = 1) Then
biString = unidades(tmpBilhao) & " bilhão, "
ElseIf (tmpBilhao > 1 And tmpBilhao < 10) Then
biString = unidades(tmpBilhao) & " bilhões, "
ElseIf (tmpBilhao >= 10 And tmpBilhao < 100) Then
biString = dezenas(tmpBilhao) & " bilhões, "
ElseIf (tmpBilhao >= 100 And tmpBilhao < 1000) Then
biString = centenas(tmpBilhao) & " bilhões, "
End If
If bilhao = 1000000000# Then biString = "um bilhão de "
bilhoes = Trim(biString & milhoes(tmpMilhao))
End Function

Private Function Trilhoes(Trilhao As Double) As String
' Ver comentários para milhares acima
Dim tmpTrilhao As Double
Dim tmpBilhao As Double
Dim triString As String

tmpTrilhao = Int(Trilhao / 1000000000000#)
tmpBilhao = Trilhao - (tmpTrilhao * 1000000000000#)
If (tmpTrilhao = 1) Then
triString = unidades(tmpTrilhao) & " trilhão, "
ElseIf (tmpTrilhao > 1 And tmpTrilhao < 10) Then
triString = unidades(tmpTrilhao) & " trilhões, "
ElseIf (tmpTrilhao >= 10 And tmpTrilhao < 100) Then
triString = dezenas(tmpTrilhao) & " trilhões, "
ElseIf (tmpTrilhao >= 100 And tmpTrilhao < 1000) Then
triString = centenas(tmpTrilhao) & " trilhões, "
End If
If Trilhao = 1000000000000# Then triString = "um trilhão de "
Trilhoes = Trim(triString & bilhoes(tmpBilhao))
End Function

Function arredBaixo(valor)
Dim tmpValor
tmpValor = Round(CDbl(Right(Round(valor, 2) * 100, 2)) / 100, 2)
arredBaixo = Round(Round(valor, 2) - tmpValor, 0)
End Function

Dicas importantes:

  • A função é compatível com valores até 999 trilhões.
  • Ideal para recibos, cheques e contratos.
  • A função Converter_numero funciona apenas em versões do Excel para Windows com suporte ao VBA. Não funciona no Excel Online, no Excel para Mac (sem permissões para macros) ou no Google Planilhas.
  • Ao finalizar, salve a sua planilha no formato Pasta de Trabalho Habilitada para Macro do Excel. Isso fará com que seja salvo o código junto com a planilha.

Fórmula para números por extenso no Excel

  • Ative as macros ao abrir a planilha para garantir o funcionamento da função.

Confira o tutorial em vídeo:

Confira também as seguintes dicas de Excel:

Gostou da dica? Caso tenha qualquer dificuldade na hora de converter números por extenso em suas planilhas, basta deixar o seu comentário abaixo. E para conferir mais dicas de Excel, continue acompanhando o Excel Easy.



2 comentários sobre “Números por Extenso Excel: Como Converter?

    • Que bom que o artigo foi útil para você! Temos outros materiais que podem ajudar em temas relacionados, fique à vontade para explorar o blog e deixar sugestões!”

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *