Ir para o conteúdo principal

Como concatenar linhas em uma célula com base no grupo no Excel?

Autor: Sol Última modificação: 2020-08-18

Aqui está um intervalo de duas colunas, uma é a lista da turma e a outra é a lista dos nomes dos alunos. Como você pode ver, alguns alunos estão na mesma classe, outros não. Agora eu quero concatenar os alunos da mesma classe em uma célula, conforme a captura de tela mostrada abaixo, como posso lidar com isso rapidamente no Excel?
doc concatenar por grupo 1

Agrupe e concatene com fórmulas e função de filtro

Agrupe e concatene com o código VBA

Agrupe e concatene com linhas combinadas avançadasboa ideia 3


Agrupe e concatene com fórmulas e função de filtro

No Excel, você pode aplicar fórmulas a linhas concatenadas com base em uma coluna e, em seguida, usar a função Filtro para exibir apenas o resultado.

Note: Você precisa classificar seus dados por classe antes de seguir as etapas.

1. Em uma célula em branco ao lado do intervalo de dados, por exemplo, C13, digite esta fórmula =IF(A13=A12,C12&", "&B13,B13), pressione Enter e preencha a fórmula para células arrastando a alça de preenchimento.
doc concatenar por grupo 2

Na fórmula, A13 é o primeiro dado na coluna “Classe”, B13 é o primeiro dado na coluna “Nome”, “,” é o separador para delimitar o conteúdo concatenado.

2. Em seguida, na próxima coluna, D13, digite esta fórmula =IF(A13<>A14,"Last","") e arraste a alça de preenchimento para baixo para aplicar a fórmula às células necessárias.
doc concatenar por grupo 3

3. Agora selecione todo o intervalo de dados, incluindo fórmulas e clique em Data > Filter adicionar Filter icons aos dados.
doc concatenar por grupo 4

4. Clique na Filter icon no último cabeçalho da fórmula, verifique Last caixa de seleção apenas na lista suspensa e clique em OK.
doc concatenar por grupo 5

Agora o resultado é mostrado conforme abaixo, você pode remover a última coluna auxiliar se não precisar dela nunca.
doc concatenar por grupo 6


Agrupe e concatene com o código VBA

Aqui está um código VBA que também pode lidar com esse trabalho.

1. Pressione Alt + F11 chaves para habilitar o Microsoft Visual Basic for Applications janela.

2. Em seguida, na janela, clique em Tools > References Para habilitar References caixa de diálogo e verificar Microsoft Scripting Runtime. Veja a imagem:
doc concatenar por grupo 7
doc concatenar por grupo 8

3. Clique OKE clique Insert > Module na janela do VBA, e copie e cole o código do VBA abaixo no Module roteiro. Veja a imagem:

VBA: concatenar linhas em uma célula com base no grupo

  Sub ConcatenateCellsIfSameValues()
'UpdatebyExtendoffice20180201
    Dim I As Long
    Dim J As Long
    Dim xRg As Range
    Dim xRgKey As Range
    Dim xRgVal As Range
    Dim xStr As String
    Dim xDic As New Dictionary
    On Error Resume Next
    Set xRg = Application.InputBox("Select data range", "KuTools for Excel", Selection.Address, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Set xRgKey = Application.InputBox("Select key column", "KuTools for Excel", xRg.Columns(1).Address, , , , , 8)
    If xRgKey Is Nothing Then
        MsgBox "Key column cannot be empty", vbInformation, "KuTools for Excel"
    End If
    Set xRgVal = xRg(1).Offset(, 1).Resize(xRg.Rows.Count, xRg.Columns.Count - 1)
    For I = 1 To xRgKey.Count
        If I > xRgKey.Count Then Exit For
        xStr = ""
        For J = 1 To xRgVal.Columns.Count
            xStr = xStr & " " & xRgVal(I, J)
        Next
        If xDic.Exists(xRgKey(I).Text) Then
            xDic(xRgKey(I).Text) = xDic(xRgKey(I).Text) & xStr
            xRgKey(I).EntireRow.Delete
            I = I - 1
       Else
            xDic.Add xRgKey(I).Text, xStr
        End If
    Next
    For I = 1 To xRgVal.Count
        xRgVal(I).Value = xDic(xRgKey(I).Text)
    Next
End Sub

doc concatenar por grupo 9

4. Pressione F5 e selecione o intervalo de dados que você usa na caixa de diálogo pop-up.
doc concatenar por grupo 10

5. Clique OK para selecionar a coluna-chave na qual deseja agrupar.
doc concatenar por grupo 11

6. Clique OK, agora o resultado é mostrado como abaixo:
doc concatenar por grupo 12


Agrupe e concatene com linhas combinadas avançadas

Aqui está um utilitário em Kutools for Excel, Advanced Combine Linhas, que pode combinar linhas ou fazer cálculos com base em uma coluna-chave no Excel.

Kutools for Excel, com mais de 300 funções úteis, tornam seus trabalhos mais fáceis. 

Depois de instalar Kutools para Excel, faça o seguinte:(Baixe gratuitamente o Kutools para Excel agora!)

1. Selecione o intervalo de dados que você usa e clique em Kutools > Unir e dividir > Combinar linhas avançadas.
doc concatenar por grupo 13

2. No Advanced Combine Rows janela, escolha a coluna na qual deseja combinar as linhas e clique em Primary Key para defini-la como coluna-chave.
doc concatenar por grupo 14

3. Selecione a coluna que você precisa combinar, clique Combinee escolha um delimitador usado para separar o conteúdo combinado.

doc concatenar por grupo 15 doc seta para a direita doc concatenar por grupo 16

4. Clique Ok. O resultado é mostrado assim:
doc concatenar por grupo 17

Note: Antes de aplicar o utilitário, é melhor você ter uma cópia dos dados originais.

Melhores ferramentas de produtividade de escritório

🤖 Assistente de IA do Kutools: Revolucionar a análise de dados com base em: Execução Inteligente   |  Gerar Código  |  Crie fórmulas personalizadas  |  Analise dados e gere gráficos  |  Invocar funções do Kutools...
Recursos mais comuns: Encontre, destaque ou identifique duplicatas   |  Excluir linhas em branco   |  Combine colunas ou células sem perder dados   |   Rodada sem Fórmula ...
Super pesquisa: VLookup de múltiplos critérios    VLookup de múltiplos valores  |   VLookup em várias planilhas   |   Pesquisa Difusa ....
Lista suspensa avançada: Crie rapidamente uma lista suspensa   |  Lista suspensa de dependentes   |  Lista suspensa de seleção múltipla ....
Gerenciador de colunas: Adicione um número específico de colunas  |  Mover colunas  |  Alternar status de visibilidade de colunas ocultas  |  Compare intervalos e colunas ...
Recursos em destaque: Foco da Grade   |  Vista de Design   |   Grande Barra de Fórmula    Gerenciador de pastas de trabalho e planilhas   |  Biblioteca (Auto texto)   |  Data Picker   |  Combinar planilhas   |  Criptografar/Descriptografar Células    Enviar e-mails por lista   |  Super Filtro   |   Filtro Especial (filtro negrito/itálico/tachado...) ...
15 principais conjuntos de ferramentas12 Texto Ferramentas (Adicionar texto, Remover Personagens, ...)   |   50+ de cores Tipos (Gráfico de Gantt, ...)   |   Mais de 40 práticos Fórmulas (Calcule a idade com base no aniversário, ...)   |   19 Inclusão Ferramentas (Insira o código QR, Inserir imagem do caminho, ...)   |   12 Conversão Ferramentas (Números para Palavras, Conversão de moedas, ...)   |   7 Unir e dividir Ferramentas (Combinar linhas avançadas, Dividir células, ...)   |   ... e mais

Aprimore suas habilidades de Excel com o Kutools para Excel e experimente uma eficiência como nunca antes. Kutools para Excel oferece mais de 300 recursos avançados para aumentar a produtividade e economizar tempo.  Clique aqui para obter o recurso que você mais precisa...

Descrição


Office Tab traz interface com guias para o Office e torna seu trabalho muito mais fácil

  • Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
  • Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!
Comments (2)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
la formule excel détaillée plus haut ne fonctionne pas, il y a un problème=IF(A13=A12,C12&", "&B13,B13)
This comment was minimized by the moderator on the site
Hi, could you repeat the qustion in English? This formula I have tried again, it is correct.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations