Neste artigo você aprenderá a Extrair texto e números no Excel.
Muitas vezes quando estamos realizando um cruzamento de dados entre bases diferentes necessitamos que estes dados estejam padronizados, e uma das ações que devemos fazer é Extrair texto e números no Excel para realizar os cruzamentos.
Função para Extrair texto e números no Excel
A função a seguir, programada em VBA é para ser utilizada no Excel.
Lhe ajudará a Extrair texto e números de uma célula que tenha texto ou números, sejam eles juntos ou separadados.
Para usá-la, no Excel vá até o ambiente de desenvolvimento do VBA apertando ALT+F11.
Ou na aba Desenvolvedor > Visual Basic e em seguida em Inserir > Módulo.
Option Explicit
Function Separa(Text As String, opcao As Integer)
'Text = Texto a ser separado
'opcao = 1 para Números e 2 para Textos
'------------------------------------------------
Dim A As Integer 'Atribui a variável de repetição
Select Case opcao '- Verifica se é para extrair números ou texto
Case 1 'Números
For A = 1 To Len(Text)
If IsNumeric(Mid$(Text, A, 1)) Then 'se for numérico...
Separa = Separa & Mid$(Text, A, 1) 'extrai o número para a função SEPARA
End If
Next
Separa = CLng(Separa) 'Converte para long
Case 2 'Textos
For A = 1 To Len(Text)
If Not IsNumeric(Mid$(Text, A, 1)) Then 'se NÃO é numérico
Separa = Separa & Mid$(Text, A, 1)
End If
Next
Separa = Trim$(Separa) 'Elimina espaços desnecessários
End Select
End Function
Esta função armazena o valor de uma célula em uma variável, na qual é o texto a ser separado, ou número, onde é possível escolher a opção desejada, sendo = 1 para Números e 2 para Texto.
A função verifica se é para extrair números ou texto, se for numérico extrai o número para a função e separa do texto, e se for texto elemina os números.
Tudo isso através de um Loop percorre o texto palavra letra a letra, quando encontra um dos caracteres numéricos ou texto ele monta uma matriz com o conteúdo e ao final retira os espaços desnecessários.
Sabendo-se como a função funciona e colando a mesma no novo módulo, é possível usar a função.
Digite em qualquer célula “=separa(A1;1)”, =separa(Célula, 1) para extrair números e =separa(Célula, 3) para extrair texto, ela pode ser utilizada como uma função qualquer do Excel usando a sintaxe =separa(Célula, 1), como no exemplo abaixo:

Esta é uma forma simples e rápida, caso conheça outra forma compartilhe comigo.
Caso tenha dúvidas, dificuldades ou problemas para implementar a função deixe um comentário.
Veja no link abaixo outro artigo bacana também…
http://douglasgodoy.com.br/funcao-para-retirar-acentos-e-caracteres-especiais-no-excel/
Um abraço!
Douglas Godoy


Deixe um comentário