Esta resposta foi traduzida automaticamente. Como resultado, pode haver erros gramaticais ou palavras estranhas.
Caro Isaac Trajtengertz.
Obrigado por usar os produtos da Microsoft e postar na comunidade.
Para descrever um valor de uma célula por extenso em outra célula no Excel, você pode usar a função NUMEROEXTENSO, que é uma função personalizada que pode não estar disponível por padrão. O SPELLNUMBER é uma função que pode causar erros se não estiver configurada corretamente.
Aqui está um exemplo de como você pode criar uma função personalizada para isso:
- Abra o Editor do VBA:
- Pressione ALT + F11 no Excel.
- Insira um Módulo:
- Clique com o botão direito em qualquer lugar no painel do projeto e escolha Inserir > Módulo.
- Cole o Código:
- Cole o seguinte código no módulo: Function NumeroPorExtenso(ByVal valor As Double) As String
Dim unidades As Variant
Dim dezenas As Variant
Dim centenas As Variant
End Functionunidades = Array("", "um", "dois", "três", "quatro", "cinco", "seis", "sete", "oito", "nove") dezenas = Array("", "dez", "vinte", "trinta", "quarenta", "cinquenta", "sessenta", "setenta", "oitenta", "noventa") centenas = Array("", "cem", "duzentos", "trezentos", "quatrocentos", "quinhentos", "seiscentos", "setecentos", "oitocentos", "novecentos") ' Lógica para converter o número em texto ' (Você pode expandir essa lógica para incluir valores maiores e tratar casos especiais) ' Exemplo simples para números de 1 a 999 Dim inteiro As Long inteiro = Int(valor) If inteiro < 10 Then NumeroPorExtenso = unidades(inteiro) ElseIf inteiro < 100 Then NumeroPorExtenso = dezenas(Int(inteiro / 10)) & IIf(inteiro Mod 10 > 0, " e " & unidades(inteiro Mod 10), "") ElseIf inteiro < 1000 Then NumeroPorExtenso = centenas(Int(inteiro / 100)) & IIf(inteiro Mod 100 > 0, " e " & NumeroPorExtenso(inteiro Mod 100), "") Else NumeroPorExtenso = "Número muito grande" End If
- Cole o seguinte código no módulo: Function NumeroPorExtenso(ByVal valor As Double) As String
Dim unidades As Variant
Dim dezenas As Variant
Dim centenas As Variant
- Use a Função:
- Agora você pode usar a função NumeroPorExtenso em uma célula, como =NumeroPorExtenso(A1), onde A1 é a célula que contém o número que você deseja converter.
Obrigado por seu apoio e compreensão e sinta-se à vontade para me informar se tiver mais atualizações, obrigado.
Atenciosamente
Kiki.Z - MSFT | Especialista em suporte da comunidade Microsoft