KutoolsforOffice — Uma solução, cinco ferramentas poderosas.Fazer mais com menos esforço.

Como categorizar cadeias de texto com base em palavras-chave no Excel?

AutorXiaoyang Data de Modificação

Ao trabalhar com grandes conjuntos de dados no Excel, é comum precisar organizar entradas de texto com base em palavras-chave específicas, facilitando assim a elaboração de relatórios e a análise dos dados. Por exemplo, imagine que tem uma lista de várias cadeias de texto na Coluna A e pretende categorizar cada entrada de acordo com as palavras-chave indicadas na Coluna D — como agrupar qualquer célula que contenha «Kutools» sob «Extendoffice» ou atribuir qualquer cadeia que mencione «futebol» ou «basquetebol» à categoria «Desporto». A imagem seguinte ilustra este cenário. Executar esta tarefa manualmente pode ser moroso e propenso a erros, especialmente à medida que o seu conjunto de dados cresce. Neste artigo, exploramos métodos práticos e eficientes para categorizar automaticamente essas cadeias de texto, garantindo uma organização rápida dos dados e uma melhoria significativa na qualidade do seu fluxo de trabalho no Excel.

categorizar cadeias de texto com base em palavras-chave

Categorizar lista de cadeias de texto com base em palavras-chave utilizando uma fórmula matricial

Categorizar cadeias de texto com base em palavras-chave utilizando código VBA


Categorizar lista de cadeias de texto com base em palavras-chave utilizando uma fórmula matricial

Pode utilizar uma fórmula matricial para atribuir automaticamente categorias a cadeias de texto com base na correspondência de palavras-chave — uma solução especialmente valiosa em grandes conjuntos de dados onde a classificação manual é inviável. As fórmulas matriciais oferecem capacidades avançadas de correspondência de padrões no Excel, permitindo-lhe estabelecer uma ligação dinâmica entre os seus dados e os respetivos grupos de palavras-chave. Esta abordagem revela-se ideal em cenários como a rotulagem automática de comentários de clientes, a organização de inventário ou a classificação de mensagens eletrónicas com base no seu conteúdo.

1. Organize os seus dados conforme necessário, normalmente com as cadeias de texto (a categorizar) na Coluna A, as palavras-chave na Coluna D e as respetivas categorias na Coluna E. Consulte a imagem de exemplo abaixo para ver uma disposição típica dos dados.

dados de exemplo

2. Aceda a uma célula vazia junto aos seus dados originais (por exemplo, comece na célula B2 se as suas cadeias estiverem em A2:A10) e introduza a seguinte fórmula matricial:

=INDEX($E$2:$E$8,MATCH(TRUE,ISNUMBER(SEARCH($D$2:$D$8,A2)),0))
  • Dicas: Nesta fórmula:
  • $E$2:$E$8: é o intervalo que contém os nomes das categorias a atribuir a cada cadeia de texto;
  • $D$2:$D$8: é a coluna que contém as palavras-chave que pretende localizar nas suas cadeias de texto;
  • A2: é a célula que contém a cadeia de texto a analisar e categorizar.

Para obter os melhores resultados, certifique-se de que a lista de palavras-chave e as respetivas categorias estão alinhadas por linha e de que não existem células vazias nos intervalos de procura. Verifique atentamente se há gralhas ou espaços extra nas palavras-chave, para evitar falhas na correspondência.

3. Prima Ctrl + Shift + Enter (em vez de apenas Enter) após introduzir a fórmula. O Excel irá envolver a fórmula entre chavetas, indicando que se trata de uma fórmula matricial. Desta forma, será gerada automaticamente a categoria adequada para a primeira entrada. Em seguida, utilize a alça de preenchimento para arrastar a fórmula ao longo da coluna e categorizar automaticamente todas as entradas da sua lista. Veja a imagem:

Categorizar lista de cadeias de texto com base em palavras-chave com fórmula de matriz

Ao utilizar fórmulas matriciais, é essencial premir a combinação correta de teclas e, ao copiá-las, assegurar que não está a comprometer a estrutura matricial. Se o seu intervalo de dados aumentar, atualize os intervalos na fórmula para garantir uma categorização precisa.

uma captura de ecrã de kutools for excel ai

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.
Potencie as capacidades do seu Excel com ferramentas alimentadas por IA.Descarregue Agorae experimente uma eficiência como nunca antes!

Categorizar cadeias de texto com base em palavras-chave utilizando código VBA

Se precisar de categorizar regularmente grandes volumes de cadeias de texto e procurar uma solução flexível e automatizada, o VBA oferece uma forma eficaz de processar e atribuir categorias dinamicamente com base na correspondência de palavras-chave. Esta abordagem é ideal para utilizadores avançados que pretendam personalizar as suas regras de categorização ou integrá-las em fluxos de trabalho automatizados. Uma macro VBA pode reduzir drasticamente o esforço manual e garantir uma gestão robusta de erros nas associações personalizadas entre palavras-chave e categorias.

1. Abra o Editor do VBA no Excel clicando em Ferramentas de Programador > Visual Basic. Na janela que surgir, vá a Inserir > Módulo para criar um novo módulo. Copie e cole o seguinte código VBA no módulo:

Sub CategorizeByKeywords()
    Dim cell As Range
    Dim keywordRng As Range
    Dim categoryRng As Range
    Dim i As Integer
    Dim lastRowA As Long
    Dim lastRowD As Long
    Dim matchFound As Boolean
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    lastRowA = Cells(Rows.Count, "A").End(xlUp).Row
    lastRowD = Cells(Rows.Count, "D").End(xlUp).Row
    
    Set keywordRng = Range("D2:D" & lastRowD)
    Set categoryRng = Range("E2:E" & lastRowD)
    
    For Each cell In Range("A2:A" & lastRowA)
        matchFound = False
        For i = 1 To keywordRng.Rows.Count
            If InStr(1, cell.Value, keywordRng.Cells(i, 1).Value, vbTextCompare) > 0 Then
                cell.Offset(0, 1).Value = categoryRng.Cells(i, 1).Value
                matchFound = True
                Exit For
            End If
        Next i
        
        If Not matchFound Then
            cell.Offset(0, 1).Value = "" ' Assign blank if no keyword matched
        End If
    Next cell
End Sub

2. Para executar a macro, clique no botão Botão Executar«Executar» ou prima F5na janela do VBA. A macro irá processar todas as entradas na coluna A a partir da linha 2, procurar as palavras-chave listadas na coluna D e escrever a respetiva categoria da coluna E na coluna B.

Lembre-se de ajustar os intervalos de palavras-chave ou categorias sempre que a sua lista exceder o exemplo apresentado. Se necessário, personalize a macro para gerir correspondências sobrepostas ou múltiplas, ou para atribuir categorias predefinidas a itens sem correspondência. Faça sempre uma cópia de segurança dos seus dados antes de executar um novo código e guarde o seu livro no formato com macros ativadas (.xlsm) para reutilização futura.

Transferir ficheiro de exemplo

Clique para descarregar o ficheiro de exemplo!


Mais artigos relacionados com categorização de texto:

  • Categorizar Dados Com Base no Valor no Excel
  • Suponha que precise categorizar uma lista de dados com base no valor — por exemplo, classificando como Elevado os valores superiores a 90, como Médio os superiores a 60 e inferiores a 90, e como Baixo os inferiores a 60. Como pode resolver esta tarefa no Excel?
  • Atribuir um Valor ou Categoria Com Base num Intervalo Numérico
  • Este artigo explica como atribuir um valor ou categoria com base num intervalo limitado no Excel. Por exemplo: se o número indicado estiver entre 0 e 100, atribua o valor 5; se estiver entre 101 e 500, atribua 10; e se estiver entre 501 e 1000, atribua 15. O método descrito neste artigo permite-lhe realizar esta tarefa de forma simples e eficaz.
  • Calcular ou Atribuir Classificação por Letras no Excel
  • Atribuir uma classificação por letras a cada aluno com base nas respetivas pontuações é uma tarefa comum para professores. Por exemplo, imagine que tem uma escala de classificação definida da seguinte forma: 0–59 = F, 60–69 = D, 70–79 = C, 80–89 = B e 90–100 = A, conforme ilustrado na imagem seguinte. No Excel, como pode calcular rapidamente e facilmente a classificação por letras com base na pontuação numérica?
  • Atribuir Número de Série a Valores Duplicados ou Únicos
  • Se tiver uma lista de valores com alguns duplicados, será possível atribuir um número sequencial a cada valor — quer sejam duplicados ou únicos? Neste artigo, explico algumas fórmulas simples que o ajudarão a resolver esta tarefa no Excel.

  • Super Barra de Fórmulas (edite facilmente várias linhas de texto e fórmulas); Disposição de Leitura (leia e edite com facilidade um grande número de células); Colar em Intervalo de Filtro...
  • Mesclar Células, Linhas ou Colunas e Manter os Dados; Dividir o Conteúdo das Células; Combinar Linhas Duplicadas e Calcular Soma/Média... Evitar Entradas Duplicadas nas Células; Comparar Intervalos...
  • Selecionar linhas duplicadas ou únicas;Selecionar linhas em branco (todas as células vazias);Super Localizar e Pesquisa Aproximada em vários livros; seleção aleatória...
  • Cópia Exata de múltiplas células sem alterar a referência da fórmula;Criar Referências Automaticamente para várias folhas;Inserir Marcadores, caixas de seleção e muito mais...
  • Fórmulas Favoritas e Inserção Rápida, intervalos, gráficos e imagens; Criptografar Células com palavra-passe; Criar Lista de Correspondência e envie e-mails...
  • Extrair Texto, adicionar texto, remover caracteres de uma posição, remover espaços; criar e imprimir estatísticas da página de dados; converter entre conteúdo das células e comentários...
  • Super Filtro (guarde e aplique esquemas de filtro noutras folhas); Classificação Avançada por mês, semana, dia, frequência e muito mais; Filtro Especial por negrito, itálico…
  • Combinar Livros e Folhas de Cálculo; mesclar tabelas com base numa coluna-chave; dividir dados em várias folhas; conversão automática de xls, xlsx e PDF...
  • Agrupamento por Tabela Dinâmica número da semana, dia da semana e muito mais...Mostrar desbloqueadas, bloquear seleção com cores diferentes;Destacar células que contêm fórmula/nome...
separador kte 201905
  • 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!
rodapé do officetab