Você precisa usar a função definida pelo usuário do VBA UDF
Crie um novo módulo no Visual Basic Excel (Alt + F11, Inserir Módulo) e copie o seguinte para ele:
Public Function concatcell(Lookupvalue As String, LookupRange As Range, RowNumber As Integer)
Dim i As Long
Dim J As Long
Dim Result As String
Result = ""
J = LookupRange.Columns.Count
For i = 1 To J
If LookupRange.Cells(RowNumber, i) = Lookupvalue Then
Result = Result & LookupRange.Cells(1, i) & " "
End If
Next i
concatcell = Result
End Function
Agora, em uma nova coluna no final dos dados do seu arquivo (após Ap World History no seu exemplo), escreva o seguinte:
=A2&" " &B2& " " &C2&" "&concatcell(1,$D$1:$AB2,ROW())
$ D $ 1: $ AB2 é o intervalo das duas primeiras linhas sem Sobrenome (A), Primeiro Nome (B) e Grau (C), o $ para corrigir algumas referências e deixar os outros mudarem quando você arrastar a fórmula para baixo
A2 & B2 e C2 para concatenar com o resultado da UDF
Você pode arrastar a fórmula para baixo sem modificar nada que vai mudar por si só
Quando terminar, copie a coluna de resultados e Paste Special Values
, onde você precisa do Mail Merge Data