Como encontrar o primeiro ou todos os números numa cadeia no Excel?
Ao trabalhar com dados complexos no Excel, é comum deparar-se com células que combinam letras, números e caracteres especiais. Extrair o primeiro número ou todos os números dessas cadeias pode ser essencial para tarefas de limpeza, análise ou validação de dados. Por exemplo, talvez precise de separar números de peça presentes em nomes de produtos, extrair códigos numéricos de endereços ou isolar valores em relatórios textuais diversos. Procurar manualmente esses números em cadeias é ineficaz e sujeito a erros, sobretudo em conjuntos de dados volumosos. Este tutorial apresenta métodos práticos e eficientes para localizar o primeiro ou todos os números incorporados numa cadeia no Excel, adaptando-se a diferentes cenários e níveis de experiência dos utilizadores.
- Encontrar o primeiro número e a sua posição numa cadeia de texto com fórmula
- Encontrar todos os números numa cadeia de texto removendo todos os caracteres não numéricos
- Encontrar todos os números numa cadeia de texto extraindo apenas os números
- Extrair o primeiro ou todos os números com código VBA (macro em ciclo)
- Extrair números de uma cadeia com Preenchimento Rápido
Encontrar o primeiro número e a sua posição numa cadeia de texto com fórmula
Este método oferece um conjunto de fórmulas que permitem não só localizar e extrair o primeiro número presente numa cadeia de texto, mas também identificar a posição exata em que esse primeiro carácter numérico aparece na célula. A sua aplicação revela-se particularmente útil para utilizadores que necessitam de analisar cadeias padronizadas com números em posições variáveis, como códigos de produto ou identificadores integrados em texto descritivo.
Encontrar e extrair o primeiro número numa cadeia de texto com uma fórmula matricial
Selecione uma célula vazia onde pretende extrair o primeiro número de uma cadeia de texto, introduza a fórmula =MID(A2,MIN(IF((ISNUMBER(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)+0)*ROW(INDIRECT("1:"&LEN(A2)))),ISNUMBER(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)+0)*ROW(INDIRECT("1:"&LEN(A2))))),1)+0 (A2 é a célula de texto onde procurará o primeiro número) e prima simultaneamente Ctrl+Shift+Enter. Esta entrada matricial garante que a fórmula processe cada carácter da sua cadeia individualmente.
Após confirmar, arraste a Alça de Preenchimento da célula para baixo para aplicar a fórmula às linhas adicionais, conforme necessário.
Após aplicação, os primeiros números de cada cadeia de texto são encontrados e extraídos, conforme ilustrado abaixo:
Encontrar a posição do primeiro número numa cadeia de texto com fórmulas
Selecione uma célula vazia onde pretende obter a posição do primeiro número e introduza a seguinte fórmula:=MÍNIMO(SE(ÉNÚM(PESQUISAR({1;2;3;4;5;6;7;8;9;0};A2));PESQUISAR({1;2;3;4;5;6;7;8;9;0};A2))) (A2 representa aqui a célula que pretende verificar). Esta fórmula identifica a primeira ocorrência de qualquer dígito (0–9). Arraste a fórmula para baixo para preencher as células adjacentes, conforme necessário.

Nota: Como alternativa, utilize esta fórmula matricial:=MÍNIMO(PESQUISAR({0;1;2;3;4;5;6;7;8;9};A2&{0;1;2;3;4;5;6;7;8;9})). Não se esqueça de confirmar com Ctrl+Shift+Enter. Ao copiar fórmulas, atualize sempre as referências de células fixas caso a sua estrutura mude. Se a cadeia não contiver números, estas fórmulas devolvem um erro — pode envolver a fórmula com SEERRO para apresentar mensagens personalizadas nesses casos.
Encontrar todos os números numa cadeia de texto removendo todos os caracteres não numéricos
Se o seu objetivo for obter todos os números de uma célula removendo simplesmente quaisquer caracteres não numéricos, a funcionalidade Excluir Caracteres Específicos do Kutools para Excel oferece uma solução extremamente conveniente. Esta opção é ideal para utilizadores que frequentemente processam dados importados ou precisam de uma limpeza rápida e em lote das células, preferindo uma interface intuitiva em vez de fórmulas complexas.
1. Selecione o intervalo que pretende processar para extrair todos os números e vá até ao menu: Kutools > Texto > Excluir Caracteres Específicos. Consulte a imagem de referência:
2. Na caixa de diálogo Excluir Caracteres Específicos que aparece, certifique-se de que apenas a caixa de verificação Não numérico está selecionada e clique em OK para continuar.
Como resultado, a ferramenta removerá todos os caracteres não numéricos das células selecionadas, deixando apenas os componentes numéricos de cada célula.
Antes de executar esta operação, considere fazer uma cópia de segurança do seu intervalo caso precise de reverter. Para cadeias de texto que contenham números separados por letras (por exemplo, "A23B17"), todos os números serão concatenados (“2317”). Se esperar uma disposição diferente, considere combinar esta funcionalidade com outras funções.
Kutools para Excel– Potencie o Excel com mais de 300 ferramentas essenciais, tornando o seu trabalho mais rápido e fácil, e aproveite as funcionalidades de IA para um processamento de dados mais inteligente e uma maior produtividade.Obtenha Já
Encontrar todos os números numa cadeia de texto extraindo apenas os números
Se pretender extrair diretamente todos os números presentes numa célula de texto (independentemente do formato) como um único valor, a função EXTRACTNUMBERS no Kutools para Excel oferece uma solução amigável e altamente eficiente. É ideal para utilizadores que precisam de processamento em lote, mas preferem uma abordagem baseada em funções e fórmulas, facilmente aplicável em toda a folha de cálculo.
1. Selecione uma célula vazia onde pretende que os números extraídos apareçam e clique em Kutools > Funções > Texto > EXTRACTNUMBERS. Veja a ilustração abaixo:
2. Na caixa de diálogo Argumentos da Função, atribua a célula de texto relevante ao campo Txt e introduza VERDADEIRO no campo N (para devolver um valor numérico). Em seguida, clique em OK para confirmar e extrair os números.
Notas:
(1) Pode introduzir VERDADEIRO, FALSO ou deixar o campo N em branco. Especificar VERDADEIRO devolve um valor numérico; FALSO ou deixá-lo em branco devolve os números como texto (útil para preservar zeros à esquerda).
(2) Esta funcionalidade também pode ser utilizada diretamente como fórmula na folha de cálculo: =EXTRACTNUMBERS(A2;VERDADEIRO). Introduza-a na célula de saída pretendida.
(3) Ao copiar a fórmula para linhas adjacentes, certifique-se de ajustar as referências de célula quando necessário.
Os números extraídos de cada célula de texto serão apresentados conforme ilustrado abaixo:
Kutools para Excel– Potencie o Excel com mais de 300 ferramentas essenciais, tornando o seu trabalho mais rápido e fácil, e aproveite as funcionalidades de IA para um processamento de dados mais inteligente e uma maior produtividade.Obtenha Já
Extrair o primeiro ou todos os números com código VBA (macro em ciclo)
Quando as fórmulas e funcionalidades incorporadas não forem suficientes — por exemplo, se precisar de extrair apenas o primeiro número, a primeira sequência numérica completa ou todos os números separados de uma cadeia — utilizar código VBA oferece maior flexibilidade e automatização. Este método é especialmente recomendado para utilizadores que lidam frequentemente com requisitos específicos de extração em grandes conjuntos de dados ou que pretendam automatizar o processo com macros reutilizáveis. Lembre-se de ativar as macros e, antes de executar qualquer código em grandes volumes de dados, faça sempre uma cópia de segurança do seu ficheiro.
1. Na janela principal do Excel, clique em Ferramentas de Programador > Visual Basic para abrir o editor VBA. Na janela Microsoft Visual Basic para Aplicações, selecione Inserir > Módulo. Copie e cole o seguinte código no novo módulo:
Extrair os primeiros números: Extrai apenas a primeira sequência numérica contínua encontrada em cada cadeia (por exemplo, "abc12def45" devolve 12).
Sub ExtractFirstNumber()
Dim rng As Range
Dim cell As Range
Dim txt As String
Dim i As Integer
Dim sNum As String
Dim FirstNum As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.Selection
Set rng = Application.InputBox("Select range", xTitleId, rng.Address, Type:=8)
For Each cell In rng
txt = cell.Value
sNum = ""
FirstNum = ""
For i = 1 To Len(txt)
If Mid(txt, i, 1) Like "[0-9]" Then
sNum = sNum & Mid(txt, i, 1)
If i = Len(txt) Or Not (Mid(txt, i + 1, 1) Like "[0-9]") Then
FirstNum = sNum
Exit For
End If
ElseIf sNum <> "" Then
FirstNum = sNum
Exit For
End If
Next i
cell.Offset(0, 1).Value = FirstNum
Next cell
End Sub Extrair todos os números: Extrai todos os números em sequência, separando cada bloco numérico com espaços (por exemplo, "abc12def45" devolve "12 45").
Sub ExtractAllNumbers()
Dim rng As Range
Dim cell As Range
Dim txt As String
Dim i As Integer
Dim arrNums As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.Selection
Set rng = Application.InputBox("Select range", xTitleId, rng.Address, Type:=8)
For Each cell In rng
txt = cell.Value
arrNums = ""
For i = 1 To Len(txt)
If Mid(txt, i, 1) Like "[0-9]" Then
arrNums = arrNums & Mid(txt, i, 1)
Else
If arrNums <> "" Then
arrNums = arrNums & " "
End If
End If
Next i
arrNums = WorksheetFunction.Trim(arrNums)
cell.Offset(0, 1).Value = arrNums
Next cell
End Sub 2. No editor do VBA, clique no botão
Executar ou prima F5 para executar o código. Irá surgir uma caixa de diálogo a solicitar que selecione o intervalo de destino. O código escreve o(s) número(s) extraído(s) na coluna imediatamente à direita dos dados originais.
Certifique-se de que a sua folha de cálculo não utiliza já as colunas imediatamente à direita dos seus dados, para evitar substituições acidentais. Se o código não parecer funcionar, verifique se as macros estão ativadas no seu livro e confirme que os seus valores de texto contêm efetivamente números.
Extrair números de uma cadeia com Preenchimento Rápido
A funcionalidade integrada do Excel Preenchimento Rápido consegue extrair automaticamente números de cadeias de texto ao aprender com padrões de exemplo. Este método é especialmente útil para operações manuais rápidas em dados bem estruturados ou quando procura uma solução simples, sem fórmulas, que não exija a configuração de lógica complexa.
Para utilizar o Preenchimento Rápido para extrair números de uma cadeia:
- Numa Coluna em branco adjacente aos seus dados, digite manualmente o resultado pretendido para a primeira célula. Por exemplo, se A2 contiver "OrderA12B3", digite "123" em B2 para demonstrar o resultado da extração.
- Vá para a célula abaixo do seu exemplo (por exemplo, B3) e comece a digitar o resultado esperado para a linha seguinte. O Excel poderá mostrar uma pré-visualização do padrão que reconhece. Se a pré-visualização corresponder à sua intenção, basta premir Enter. Caso contrário, continue a demonstrar os padrões pretendidos com mais alguns exemplos.
- Alternativamente, após introduzir o exemplo na primeira célula, selecione toda a área de preenchimento da lista pretendida e vá até Dados > Preenchimento Rápido(ou prima)Ctrl + E). O Excel preencherá automaticamente os números extraídos com base no padrão aprendido.
O Preenchimento Rápido reconhece relações consistentes entre entrada e saída; por isso, certifique-se de que os seus exemplos são claros e precisos. Esta funcionalidade funciona melhor quando o formato dos dados é regular — se a estrutura dos seus dados for mais variável ou se precisar de controlo preciso, considere utilizar uma solução com fórmulas ou macros.
Se o Preenchimento Rápido não aparecer, verifique se está ativado em Ficheiro > Opções > Avançadas > Opções de edição e certifique-se de que Preenchimento Rápido automático está selecionado.
Demonstração: encontrar todos os números numa cadeia no Excel
As Melhores Ferramentas de Produtividade para o Office
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.
- 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