Como extrair o texto antes ou depois do segundo espaço ou vírgula no Excel?
Ao trabalhar com dados de texto no Excel, encontrará frequentemente cadeias que contêm múltiplos espaços, vírgulas ou outros delimitadores. Embora a funcionalidade Texto em Colunas do Excel permita dividir o conteúdo de uma célula em colunas separadas com base num delimitador escolhido, há situações em que precisa de uma solução mais específica — como extrair tudo o que está antes ou depois do segundo espaço ou vírgula numa célula. Este artigo apresenta vários métodos práticos para o conseguir, incluindo fórmulas para obter o texto antes ou depois do segundo espaço/vírgula, soluções robustas com macros VBA para automatizar tarefas ou lidar com conjuntos de dados maiores, e opções versáteis com Power Query para pré-processamento avançado de dados.

Extrair Texto antes do segundo espaço ou vírgula com fórmula
Extrair Texto após o segundo espaço ou vírgula com fórmula
Extrair Texto antes ou depois do segundo delimitador (espaço/vírgula) com código VBA
Extrair Texto antes do segundo espaço ou vírgula com fórmula
Se pretender isolar a parte de uma célula que aparece antes do segundo espaço, pode usar uma combinação de funções do Excel.
1. Introduza a seguinte fórmula numa célula vazia onde quiser apresentar o resultado (por exemplo, na célula)C2):
=IF(ISERROR(FIND(" ",A2,FIND(" ",A2,1)+1)),A2,LEFT(A2,FIND(" ",A2,FIND(" ",A2,1)+1))) 2. Prima Enter. Em seguida, utilize a alça de preenchimento para arrastar a fórmula até todas as linhas que pretende processar. O resultado apresentará todo o texto antes do segundo espaço em cada linha correspondente — veja a imagem abaixo:

Dica:Se pretender extrair texto antes da segunda vírgula ou de outro delimitador, basta substituir o caractere de espaço ()" ") na fórmula pelo seu delimitador pretendido. Por exemplo, para uma vírgula:
=IF(ISERROR(FIND(",",A2,FIND(",",A2,1)+1)),A2,LEFT(A2,FIND(",",A2,FIND(",",A2,1)+1))) Esta abordagem é rápida e eficiente para extrações pontuais ou quando se trabalha com conjuntos de dados de dimensão moderada. Contudo, se o texto for muito irregular ou o número de delimitadores variar significativamente entre linhas, poderão ser necessários ajustes adicionais na fórmula. Além disso, esteja atento a espaços extra ou a Células vazias, que podem afetar os resultados. Verifique sempre cuidadosamente a saída ao aplicar a dados críticos.

Desbloqueie a Magia do Excel com KUTOOLS AI
- Execução Inteligente: Realize operações em células, analise dados e crie gráficos — tudo impulsionado por comandos simples.
- fórmulas personalizadas: Crie fórmulas personalizadas para simplificar os seus fluxos de trabalho.
- Programação VBA: Escreva e implemente código VBA com facilidade.
- Interpretação de Fórmulas: Compreenda facilmente fórmulas complexas.
- Tradução de Texto: Elimine barreiras linguísticas nas suas folhas de cálculo.
Extrair Texto após o segundo espaço ou vírgula com fórmula
Para extrair o texto que aparece após o segundo delimitador de espaço numa célula, pode utilizar as funções MID e PROCURAR em conjunto.
1. Introduza a seguinte fórmula na célula de destino (por exemplo, D2):
=MID(A2, FIND(" ", A2, FIND(" ", A2)+1)+1,256) 2. Prima Enter. Arraste a alça de preenchimento para baixo por todas as linhas que necessitam de extração. Isto irá mostrar tudo o que está após o segundo espaço em cada linha, conforme demonstrado na imagem:

Dica: Para extrair texto após a segunda vírgula ou qualquer outro separador, substitua o caractere de espaço na fórmula pelo delimitador pretendido. No caso de uma vírgula, a fórmula seria:
=MID(A2, FIND(",", A2, FIND(",", A2)+1)+1,256) Extrair Texto antes ou depois do segundo delimitador (espaço/vírgula) com código VBA
Para conjuntos de dados maiores, extrações repetidas ou cenários de automatização, utilizar uma macro VBA é uma solução eficaz. O VBA permite-lhe extrair texto antes ou depois do segundo espaço, vírgula ou qualquer outro delimitador — aumentando a eficiência ao trabalhar com diferentes estruturas de dados ou sempre que precisar de uma rotina reutilizável.
1. Selecione Programador > Visual Basic. Na janela que surge, Microsoft Visual Basic para Aplicações, clique em Inserir > Módulo e introduza o seguinte código na janela do módulo:
Sub ExtractTextSecondDelimiter()
Dim rng As Range
Dim cell As Range
Dim sep As String
Dim direction As String
Dim arr As Variant
Dim result As String
Dim pos1 As Long
Dim pos2 As Long
Dim xTitleId As String
Dim outputCell As Range
Dim i As Long
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.Selection
Set rng = Application.InputBox("Select text range to extract from", xTitleId, rng.Address, Type:=8)
If rng Is Nothing Then Exit Sub
sep = Application.InputBox("Enter delimiter (e.g. space or comma)", xTitleId, " ", Type:=2)
If sep = "" Then Exit Sub
direction = Application.InputBox("Type 'before' for text before, 'after' for text after the 2nd delimiter", xTitleId, "before", Type:=2)
If direction = "" Then Exit Sub
Set outputCell = Application.InputBox("Select the first cell to output the result", xTitleId, Type:=8)
If outputCell Is Nothing Then Exit Sub
Application.ScreenUpdating = False
i = 0
For Each cell In rng
If Not IsEmpty(cell.Value) Then
pos1 = InStr(1, cell.Value, sep)
If pos1 > 0 Then
pos2 = InStr(pos1 + 1, cell.Value, sep)
If pos2 > 0 Then
If LCase(direction) = "before" Then
result = Left(cell.Value, pos2 - 1)
ElseIf LCase(direction) = "after" Then
result = Mid(cell.Value, pos2 + Len(sep))
Else
result = cell.Value
End If
Else
result = cell.Value
End If
Else
result = cell.Value
End If
outputCell.Offset(i, 0).Value = result
End If
i = i + 1
Next
Application.ScreenUpdating = True
MsgBox "Extraction completed.", vbInformation, xTitleId
End Sub
2. Após colar o código, clique no botão
Executar ou prima F5 para executar. Será apresentada uma caixa de diálogo a solicitar que selecione o seu intervalo de dados, introduza o delimitador, especifique se pretende o texto “antes” ou “depois” da segunda ocorrência e, por fim, indique uma célula onde colocar o resultado. A macro apresentará o resultado extraído na célula especificada.
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