Como Extrair Números no Excel

Veja neste artigo como Extrair Números no Excel.

No artigo iremos mostrar três formas de extrair números no Excel

Como Extrair Números no Excel 1

Uma forma de extrair números do Excel é você usar uma função própria VBA no Excel.

Para isso clique na guia Desenvolvedor e no botão Visual Basic. Como habilitar guia desenvolvedor.

Em seguida clique em inserir Módulo e cole o seguinte código VBA:

'Esta função tem por objetivo retirar números de células que contenham conteúdos mistos de números e texto
'sem a possibilidade de serem colunados
Public Function lfRetiraNumeros(ByVal vValor As String) As String
    'Atualiza o cálculo automaticamente
    Application.Volatile
    
    'Conta a quantidade de caracteres
    Dim vQtdeCaract As Long
    Dim vControle   As Boolean
    
    vQtdeCaract = Len(vValor)
    vControle = False
    
    'Para cada caractere identifica se é número ou texto
    For i = 1 To vQtdeCaract
        'Se for número adiciona no retorno da função
        If IsNumeric(Mid(vValor, i, 1)) Then
            If vControle = True And lfRetiraNumeros <> vbNullString Then
                lfRetiraNumeros = lfRetiraNumeros + "/"
            End If
            vControle = False
            lfRetiraNumeros = lfRetiraNumeros & Mid(vValor, i, 1)
        Else
            vControle = True
        End If
    Next
End Function

Em seguida pode usar no Excel clicando em uma célula e digitando =lfRetiraNumeros(C8) e passando a célula aonde teremos então o seguinte uso.

extrair números excel 1

Veja que temos então o uso bastante simples da função, bastando usar como uma função normalmente, tendo então o retorno apenas dos números extraídos.

Como Extrair Números no Excel 2

Uma segunda forma de extrair números no Excel é usando o Power Query.

Então podemos usar a linguagem M e extrair somente números usando Power Query no Excel ou no PowerBI.

Para isso clique na guia Dados e em Obter Dados selecione o local de onde virão os dados, podendo conectar com diversas fontes, no nosso exemplo foi feito com base em uma tabela.

extrair números excel 2

Uma vez aberto no Power Query clique em Inserir->Adicionar Coluna->Coluna Personalizada.

Nela usamos o seguinte código inserido:

= Text.Select([Hist Lanc], {"0".."9"," "})
extrair números excel 3

No código temos então o uso da função Text.Select para retornar somente valores de números de 0 à 9 e também espaço em branco ” “.

Em seguida clicando com o botão direito sobre a coluna clicamos com o botão direito em Transformar->Cortar e Transformar->Limpar para remover os espaços em branco.

Ao clicar em Página->Fechar e Carregar e carregamos os dados para a planilha em formato de tabela como temos no resultado abaixo na coluna Somente números.

extrair números excel 4

Como Extrair Números no Excel 3

A terceira forma de extrair números de células do Excel é usando funções do Excel 365.

Nela usamos a fórmula abaixo aonde temos então a extração dos dados abrindo cada uma das letras e verificando se o caracter é um número ou um texto.

Para isso usamos a fórmula abaixo:

=ARRUMAR(UNIRTEXTO(“”;;FILTRO(EXT.TEXTO(C8;SEQUÊNCIA(NÚM.CARACT(C8));1);
(ÉNÚM(EXT.TEXTO(C8;SEQUÊNCIA(NÚM.CARACT(C8));1)*1))+
(EXT.TEXTO(C8;SEQUÊNCIA(NÚM.CARACT(C8));1)=” “))))

Na fórmula usamos a função EXT.TEXTO, aonde temos a extração de um ou mais caracteres à partir de uma cadeia de texto.

Com isso usamos a função SEQUÊNCIA parar gerar uma sequência de números com a quantidade de caracteres que temos na nossa lista NÚM.CARACT, extraindo de uma um.

Usando a função FILTRO temos então a análise de cada um destes dados item a item usando a matriz com todos os caracteres.

Com isso usamos o ÉNÚM para verificar se é um número e retornando VERDADEIRO ou FALSO para cada caractere.

E por fim usamos o UNIRTEXTO para retornar da função FILTRO apenas os itens que atendem esta situação.

Além disso usamos a mesma lógica para manter os espaços, ” ” e temos o ARRUMAR para remover espaços duplicados.

Se quiser reaplicar diretamente apenas copiando a fórmula também pode.

Basta copiar e alterar o C8 pela célula aonde irá extrair os números.

extrair números excel 5

E o resultado que temos é a extração destes números conforme abaixo.

extrair números excel 6

Outra forma de fazer isso é aplicando LET para criar variáveis e reutilizar funções utilizadas nesta fórmula, como abaixo:

=LET(strTexto;EXT.TEXTO(C8;SEQUÊNCIA(NÚM.CARACT(C8));1);
ARRUMAR(UNIRTEXTO(“”;;FILTRO(strTexto;(ÉNÚM(strTexto*1))+(strTexto=” “)))))

Note que reduz muito o cálculo, lembrando que no vídeo ao início é explicado todo este artigo na aula.

Outra forma de fazer isso é criando uma função LAMBDA à partir desta.

Veja abaixo a função LAMBDA.

=LAMBDA(strCelula; LET(strTexto;EXT.TEXTO(strCelula;SEQUÊNCIA(NÚM.CARACT(strCelula));1); ARRUMAR(UNIRTEXTO(“”;;FILTRO(strTexto;(ÉNÚM(strTexto*1))+(strTexto=” “))))))

Então adicionamos esta função no Gerenciador de Nomes.

extrair números excel 7

E por fim temos a extração de dados usando a nossa função lambda criada, sem usar o VBA como no início e podendo ser aplicada no Excel de forma simples.

Download Planilha Extrair Números no Excel

Clique no botão abaixo para realizar o  download do arquivo de exemplo:

Baixe a planilha


Marcos Rieper

Pai, marido, professor e consultor em Excel.

Obrigado por ler este artigo, este blog foi criado para difundir o conhecimento em Excel à todos.

Divulgamos novos artigos nas redes sociais, basta clicar nos ícones abaixo.

Excel não precisa ser complicado

Assine nossa newsletter e receba dicas práticas para dominar o excel