Вам нужно будет использовать VBA, чтобы объединить значения, найденные в первом столбце. Я использую VBA UDF, найденную здесь, и немного изменяю код.
Function MYVLOOKUP(lookupval, lookuprange As Range, indexcol As Long)
Dim r As Range
Dim result As String
result = ""
For Each r In lookuprange
If r = lookupval Then
If result = "" Then
result = r.Offset(0, indexcol - 1)
Else
result = result & ";" & r.Offset(0, indexcol - 1)
End If
End If
Next r
MYVLOOKUP = result
End Function
Предположим, что ваши данные организованы, как на этом изображении, вставьте следующую формулу в H4:=IFERROR(INDEX(B4:B8,MATCH(0,COUNTIF($H$3:H3,B4:B8),0)),"")
Нажмите: CTRL + SHIFT + ENTER
чтобы формула была принята как формула массива (она будет иметь фигурные скобки), затем перетащите формулу вниз.
В I4 введите формулу:=MYVLOOKUP(H4,B4:B9,0)
И в J4:=SUMIF(B4:C9,H4,C4:C9)
Не забудьте перетащить формулы вниз, где это необходимо.