Compartilhar via

qual função descreve um valor de uma célula por extenso em outra célula?

Anônima
2024-10-15T19:21:31+00:00

tentei o spellnumber mas deu erro

Microsoft 365 e Office | Excel | Outro | Windows

Pergunta bloqueada. Essa pergunta foi migrada da Comunidade de Suporte da Microsoft. É possível votar se é útil, mas não é possível adicionar comentários ou respostas ou seguir a pergunta.

0 comentários Sem comentários
{count} votos

1 resposta

Classificar por: Mais útil
  1. Anônima
    2024-10-16T07:42:18+00:00

    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:

    1. Abra o Editor do VBA:
      • Pressione ALT + F11 no Excel.
    2. Insira um Módulo:
      • Clique com o botão direito em qualquer lugar no painel do projeto e escolha Inserir > Módulo.
    3. 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
          unidades = 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
        
        End Function
    4. 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.

    Imagem

    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

    3 pessoas acharam esta resposta útil.
    0 comentários Sem comentários