KutoolsforOffice — Uma solução, cinco ferramentas poderosas.Fazer mais com menos esforço.

Converter Converter em Palavras em Rupia Indiana e noutras moedas no Excel (2025 Edition)

AutorXiaoyang Data de Modificação

Descubra como converter números em palavras em rupias indianas — ou em qualquer outra moeda — diretamente no Excel.

Ao trabalhar com documentos financeiros — como faturas, orçamentos, formulários fiscais, cheques ou recibos de pagamento — é frequentemente necessário apresentar os valores monetários tanto em formato numérico como por extenso. Essa prática acrescenta um toque de profissionalismo e ajuda a prevenir fraudes ou interpretações incorretas.

Exemplo

12,350,50 → Doze Mil Trezentos e Cinquenta Rupias e Cinquenta Paisas Apenas

Embora o Microsoft Excel não inclua uma funcionalidade integrada para converter números em palavras, existem várias formas eficazes de o conseguir — recorrendo a VBA, funções LAMBDA ou ao suplemento tudo-em-um Kutools para Excel.

Converter Converter em Palavras em Rupia Indiana com VBA (todas as versões Microsoft)

Converter Converter em Palavras em Rupia Indiana com função LAMBDA (apenas Microsoft 365)

Converter números em USD, EUR e 30+ outras moedas (todas as versões Microsoft)

Quando utilizar cada método


Converter Converter em Palavras em Rupia Indiana com VBA (todas as versões Microsoft)

Para utilizadores de qualquer versão do Excel, o VBA (Visual Basic for Applications) oferece um método personalizável para converter montantes numéricos em palavras segundo o sistema numérico indiano — como milhares, lakhs e crores.

Passo 1. Prima Alt + F11 para abrir o editor do VBA (janela do Microsoft Visual Basic for Applications).

vba-editor

Passo 2. Aceda a Inserir > Módulo.

selecionar-módulo

Passo 3. Cole o código VBA no módulo.

Converter números em palavras em Rupia Indiana

Function ConvertToRupees(ByVal MyNumber)
'UpdatebyExtendoffice
    Dim Units As String, SubUnits As String, TempStr As String
    Dim DecimalPlace As Integer, Count As Integer
    Dim Place(9) As String
    Place(2) = " Thousand "
    Place(3) = " Lakh "
    Place(4) = " Crore "
    
    MyNumber = Trim(Str(MyNumber))
    DecimalPlace = InStr(MyNumber, ".")
    
    If DecimalPlace > 0 Then
        SubUnits = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & "00", 2))
        MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))
    End If
    
    Count = 1
    Do While MyNumber <> ""
        TempStr = GetHundreds(Right(MyNumber, 3))
        If TempStr <> "" Then Units = TempStr & Place(Count) & Units
        If Len(MyNumber) > 3 Then
            MyNumber = Left(MyNumber, Len(MyNumber) - 3)
        Else
            MyNumber = ""
        End If
        Count = Count + 1
    Loop
    
    ConvertToRupees = "Rupees " & Application.WorksheetFunction.Trim(Units)
    If SubUnits <> "" Then
        ConvertToRupees = ConvertToRupees & " and " & SubUnits & " Paise"
    End If
    ConvertToRupees = ConvertToRupees & " Only"
End Function

Private Function GetHundreds(ByVal MyNumber)
    Dim Result As String
    If Val(MyNumber) = 0 Then Exit Function
    MyNumber = Right("000" & MyNumber, 3)
    
    If Mid(MyNumber, 1, 1) <> "0" Then
        Result = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred "
    End If
    
    If Mid(MyNumber, 2, 1) <> "0" Then
        Result = Result & GetTens(Mid(MyNumber, 2))
    Else
        Result = Result & GetDigit(Mid(MyNumber, 3))
    End If
    GetHundreds = Result
End Function

Private Function GetTens(TensText)
    Dim Result As String
    If Val(Left(TensText, 1)) = 1 Then
        Select Case Val(TensText)
            Case 10: Result = "Ten"
            Case 11: Result = "Eleven"
            Case 12: Result = "Twelve"
            Case 13: Result = "Thirteen"
            Case 14: Result = "Fourteen"
            Case 15: Result = "Fifteen"
            Case 16: Result = "Sixteen"
            Case 17: Result = "Seventeen"
            Case 18: Result = "Eighteen"
            Case 19: Result = "Nineteen"
        End Select
    Else
        Select Case Val(Left(TensText, 1))
            Case 2: Result = "Twenty "
            Case 3: Result = "Thirty "
            Case 4: Result = "Forty "
            Case 5: Result = "Fifty "
            Case 6: Result = "Sixty "
            Case 7: Result = "Seventy "
            Case 8: Result = "Eighty "
            Case 9: Result = "Ninety "
        End Select
        Result = Result & GetDigit(Right(TensText, 1))
    End If
    GetTens = Result
End Function

Private Function GetDigit(Digit)
    Select Case Val(Digit)
        Case 1: GetDigit = "One"
        Case 2: GetDigit = "Two"
        Case 3: GetDigit = "Three"
        Case 4: GetDigit = "Four"
        Case 5: GetDigit = "Five"
        Case 6: GetDigit = "Six"
        Case 7: GetDigit = "Seven"
        Case 8: GetDigit = "Eight"
        Case 9: GetDigit = "Nine"
        Case Else: GetDigit = ""
    End Select
End Function
colar-código

Passo 4. Guarde e volte ao Excel.

Passo 5. Selecione uma célula e insira a fórmula da seguinte forma:

=ConvertToRupees(A2)

Prima a tecla Enter.

utilizar-fórmula

💡Dica: este método aceita valores decimais (Paise) e funciona offline.

Limitações da utilização de VBA

  • É necessário guardar o livro como ficheiro com macros ativadas (.xlsm).
  • As macros podem ser bloqueadas pelas definições de segurança em determinados ambientes.

Converter Converter em Palavras noutras moedas (USD, EUR, etc.)

Para personalizar o resultado noutras moedas, como «Dólares» ou «Euros», basta ajustar os valores de texto na função VBA. Abaixo encontra uma versão simplificada e mais flexível da função.

Modelo flexível de código VBA (moeda personalizada)

'UpdatebyExtendoffice
Public Function NumberToWordsCustom(ByVal num As Double, Optional ByVal currency2 As String, Optional ByVal subCurrency As String) As String
    Dim result As String
    Dim dollars As Long
    Dim cents As Long

    dollars = Int(num)
    cents = Round((num - dollars) * 100)
  
    If Len(currency2) = 0 Then currency2 = "Dollars"
    If Len(subCurrency) = 0 Then subCurrency = "Cents"
    result = currency2 & " " & SpellNumber_English(dollars)

    If cents > 0 Then
        result = result & " and " & SpellNumber_English(cents) & " " & subCurrency
    End If

    NumberToWordsCustom = result & " Only"
End Function

Private Function SpellNumber_English(ByVal MyNumber As Long) As String
    Dim Units As Variant, Tens As Variant, Teens As Variant
    Dim Place() As String
    Dim TempStr As String
    Dim Count As Integer
    Dim t As String
    Dim StrNumber As String
    Dim n As Integer

    Place = Split(" Thousand Million Billion", " ")
    Units = Array("", "One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine")
    Tens = Array("", "", "Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninety")
    Teens = Array("Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eighteen", "Nineteen")

    StrNumber = Trim(Str(MyNumber))
    Count = 0

    Do While StrNumber <> ""
        n = Val(Right(StrNumber, 3))
        If n <> 0 Then
            t = ConvertHundreds(n, Units, Tens, Teens)
            If Count > 0 Then t = t & " " & Place(Count - 1)
            TempStr = t & " " & TempStr
        End If
        If Len(StrNumber) > 3 Then
            StrNumber = Left(StrNumber, Len(StrNumber) - 3)
        Else
            StrNumber = ""
        End If
        Count = Count + 1
    Loop

    SpellNumber_English = Trim(TempStr)
End Function

Private Function ConvertHundreds(ByVal n As Integer, Units As Variant, Tens As Variant, Teens As Variant) As String
    Dim result As String
    If n >= 100 Then
        result = Units(Int(n / 100)) & " Hundred "
        n = n Mod 100
    End If
    If n >= 20 Then
        result = result & Tens(Int(n / 10)) & " "
        n = n Mod 10
    ElseIf n >= 10 Then
        result = result & Teens(n - 10) & " "
        n = 0
    End If
    If n > 0 Then
        result = result & Units(n)
    End If
    ConvertHundreds = Trim(result)
End Function

Exemplo de fórmula VBA:

=NumberToWordsCustom(A2, «Dollars», «Cents»)
fórmula-vba-para-outra-moeda

Exemplo de fórmula VBA para outra moeda:

=NumberToWordsCustom(A2, «Euros», «Cents»)

=NumberToWordsCustom(A2, «Pounds», «Pence»)

O código é flexível — basta indicar a moeda e a subunidade pretendidas.


Guarde o seu livro como ficheiro com macros ativadas

Se estiver a utilizar VBA, guarde o seu livro com macros ativadas — caso contrário, o código será perdido ao fechar o ficheiro.

Passo 1. Aceda a Ficheiro > Guardar Como

utilizar-guardar-como

Passo 2. Selecione uma localização e escolha o tipo de ficheiro: Livro do Excel com Macros Ativadas (*.xlsm).

utilizar-guardar-como-com-macros

Passo 3. Clique em Guardar.

✅ As suas funções personalizadas, como =ConvertToRupees(A2), ficam agora guardadas e prontas a reutilizar sempre que precisar.


Converter Converter em Palavras em Rupia Indiana com função LAMBDA (apenas Microsoft 365)

Para utilizadores do Excel 365, pode utilizar a LAMBDA, uma nova funcionalidade do Excel que lhe permite criar fórmulas personalizadas — sem precisar de VBA.

🪄 O que é o LAMBDA?

O LAMBDA é uma funcionalidade do Excel que lhe permite criar as suas próprias funções personalizadas com base em fórmulas — tal como as funções integradas, como SOMA ou SE, mas sem precisar de escrever qualquer código ou utilizar macros. É perfeito para simplificar lógicas repetitivas e tornar as suas folhas de cálculo mais limpas e fáceis de manter.

Passo 1: aceda ao separador Fórmulas e clique em Gerenciador de Nomes.

selecionar-gestor-de-nomes

Passo 2: crie um novo nome.

  • Clique no botão Novo.

    criar-novo-nome
  • Introduza um Nome.

    Exemplo: RupeeToWords

    criar-nome
  • Passo 3: cole esta fórmula LAMBDA no campo Refere-se a:

    =LAMBDA(n, LET( units, {«»,«One»,«Two»,«Three»,«Four»,«Five»,«Six»,«Seven»,«Eight»,«Nine»}, teens, {«Ten»,«Eleven»,«Twelve»,«Thirteen»,«Fourteen»,«Fifteen»,«Sixteen»,«Seventeen»,«Eighteen»,«Nineteen»}, tens, {«»,«»,«Twenty»,«Thirty»,«Forty»,«Fifty»,«Sixty»,«Seventy»,«Eighty»,«Ninety»}, num, INT(n), paise, ROUND((n - INT(n)) * 100, 0), ConvertTwo, LAMBDA([[PH_1]], IF([[PH_1]]0, « » & INDEX(units, MOD([[PH_1]],10)+1), «») ) ) ), ConvertThree, LAMBDA(x, IF(x=0, «», IF([[PH_1]]0, « » & ConvertTwo(MOD([[PH_1]],100)), «») ) ) ), words, IF(num=0, «Zero», TEXTJOIN(« », TRUE, IF(INT(num/10000000)>0, ConvertTwo(INT(num/10000000)) & « Crore», «»), IF(MOD(INT(num/100000),100)>0, ConvertTwo(INT(MOD(num,10000000)/100000)) & « Lakh», «»), IF(MOD(INT(num/1000),100)>0, ConvertTwo(INT(MOD(num,100000)/1000)) & « Thousand», «»), IF(MOD(INT(num/100),10)>0, INDEX(units, INT(MOD(num,1000)/100)+1) & « Hundred», «»), IF(MOD(num,100)>0, ConvertTwo(MOD(num,100)), «») ) ), result, «Rupees » & words & IF(paise>0, « and » & ConvertTwo(paise) & « Paise», «») & « Only», result ))
  • colar-função-lambda
  • Clique em OK para guardar o novo nome.

Passo 3. Feche o Gerenciador de Nomes e volte ao Excel.

Passo 4. Utilize a fórmula em qualquer célula da seguinte forma:

=RupeeToWords(A2)

Prima a tecla Enter.

utilizar-fórmula-lambda

👀 A função LAMBDA completa trata Crores, Lakhs, Milhares e valores decimais.


Converter números em USD, EUR e 30+ outras moedas (todas as versões Microsoft)

Para a solução mais eficiente e profissional, utilize a ferramenta Kutools para Excel's Converter em Palavras. Esta poderosa ferramenta suporta:

🌍 Mais de 30 moedas, incluindo:

  • Dólares norte-americanos (USD)
  • Euros (EUR)
  • Yuan chinês (CNY)
  • Libras esterlinas (GBP)
  • etc.
Transferir

Passo 1. Selecione as células que deseja converter.

selecionar-células

Passo 2. Aceda a Kutools > Conteúdo > Converter em Palavras

selecionar-números-por-extenso

Passo 3. Selecione a moeda de destino e clique em OK.

selecionar-moeda-na-janela

Os números são automaticamente convertidos para a moeda especificada.

resultado-conversão-kutools

😁Dica: se quiser converter diretamente Converter em Palavras, marque a opção Não converter para moeda e o resultado será apresentado assim:

converter-por-extenso

Quando utilizar cada método

  • Utilize VBA se precisar de uma solução flexível e programável e já estiver familiarizado com macros.

  • Utilize a função LAMBDA se estiver a usar o Excel 365 e precisar apenas ocasionalmente de converter valores em Rupia Indiana. Trata-se de uma solução leve e partilhável, sem necessidade de macros nem ferramentas externas — ideal para tarefas simples ou pessoais.
  • Utilize o Kutools para Excel se quiser a solução mais fácil, rápida e versátil — sem precisar de programação. O Kutools é especialmente útil quando:
    • Trabalha com várias moedas.
    • Precisa converter valores em lote ou em grandes volumes de dados.
    • Quer uma ferramenta profissional, sem macros, com mais de 30 opções de moeda e desempenho potenciado por IA?

As Melhores Ferramentas de Produtividade para o Office

🤖KUTOOLS AI Assistente: Revolucione o Análise de Dados com base em:Execução Inteligente   |  Gerar Código|  Criar fórmulas personalizadas  |  Analisar Dados e Gerar Gráficos|  Invocar Funções Aprimoradas
Funcionalidades Populares:Localizar, Destacar ou Marcar Duplicatas   |  Excluir linhas em branco   |  Combinar Colunas ou Células sem Perder Dados   |   Arredondamento sem usar fórmula...
Super PROC:VLookup com Múltiplos Critérios  |  VLookup com Múltiplos Valores  |   VLookup em Múltiplas Folhas   |   Correspondência Fuzzy....
Lista Suspensa Avançada:Criar Rapidamente Lista de Seleção   |  Lista de Seleção Dependente   |  Lista de Seleção com Múltipla Escolha....
Gestor de Colunas:Adicionar um Número Específico de Colunas|Mover Colunas|Alternar Estado de Visibilidade de Colunas Ocultas|Comparar Intervalos e Colunas...
Funcionalidades em Destaque:Grade de foco   |  Visualização de Design   |Barra de fórmulas aprimorada   | Gestor de Pastas de Trabalho e Folhas   |  Biblioteca de Recursos(Texto Automático)|  Seleção de Data   |  Consolidar Planilhas  |  Encriptar/Descriptografar Células   | Enviar Emails por Lista   |  Super Filtro   |   Filtro Especial(Filtrar Células com Fonte em Negrito/itálico/rasurado...) ...
Principais Conjuntos de Ferramentas 15:12 Ferramentasde Texto(Adicionar Texto,Excluir Caracteres Específicos, ...)|   50+Tiposde Gráfico(Gráfico de Gantt, ...)|   40+ Fórmulas Práticas(Calcular a idade com base na data de nascimento, ...)|   19 Ferramentasde Inserção(Inserir QR Code,Inserir Imagem a Partir do Caminho, ...)|   12 Ferramentasde Conversão(Converter em Palavras,Conversão de moeda, ...)|   7 Ferramentasde Mesclar e Dividir(Mesclar Linhas Avançado,Dividir Células, ...)|... e muito mais
Utilize o Kutools na sua língua preferida – suporta inglês, espanhol, alemão, francês, chinês e mais 40+ idiomas!

Potencie as suas competências no Excel com Kutools para Excel e experimente uma eficiência como nunca antes.Kutools para Excel Oferece mais de 300 funcionalidades avançadas para impulsionar a produtividade e Economizar Tempo.Clique aqui para obter a funcionalidade de que mais precisa...


Office Tab Traz uma interface com separadores para o Office e torna o seu trabalho muito mais fácil

  • Ative a edição e leitura com separadores no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novos separadores da mesma janela, em vez de em janelas separadas.
  • Aumente a sua produtividade em 50 % e elimine centenas de cliques do rato todos os dias!

Todos os suplementos Kutools — num único instalador.

Kutools for Office reúne suplementos para Excel, Word, Outlook e PowerPoint, além do Office Tab Pro, sendo a solução ideal para equipas que trabalham em várias aplicações do Office.

ExcelWordOutlookTabsPowerPoint
  • Pacote tudo-em-um— suplementos para Excel, Word, Outlook e PowerPoint + Office Tab Pro
  • Um instalador, uma licença— configuração em minutos (pronto para MSI)
  • Funciona melhor em conjunto— produtividade simplificada em todas as aplicações do Office
  • Teste gratuito de 30 dias com todas as funcionalidades— sem registo, sem cartão de crédito
  • Melhor relação qualidade-preço— poupe face à compra individual dos suplementos