У меня есть таблица, как показано ниже:
Я хочу преобразовать его в таблицу следующим образом:
Для колонки Кредит я использую формулу типа =SUMIFS(C:C;A:A;A2)
.
Но можно ли сделать это для столбца Банки? Что-то вроде =CONCATENATEIFS(B:B;A:A;A2)
.
Бонусный вопрос: есть ли способ добавить разделитель, как ,
в моем примере?
Могу ли я предложить вам использовать TEXTJOIN
.
Предполагая, что ваша таблица находится в столбцах A - C, а значения поиска - в столбцах E - G, используйте формулу:
=TEXTJOIN(",",TRUE,IF($A$2:$A$6=$E10,$B$2:$B$6,""))
DRag формула вниз к другим ячейкам.
Public Function contxt(ParamArray args() As Variant) As Variant
Dim tmptext As Variant, i As Variant, Cellv As Variant
Dim Cell As Range
tmptext = ""
For i = 0 To UBound(args)
If Not IsMissing(args(i)) Then
Select Case TypeName(args(i))
Case "Range"
For Each Cell In args(i)
tmptext = tmptext & Cell
Next Cell
Case "Variant()"
For Each Cellv In args(i)
tmptext = tmptext & Cellv
Next Cellv
Case Else
tmptext = tmptext & args(i)
End Select
End If
Next i
tmptext = Mid(tmptext, 1, Len(tmptext) - 1)
contxt = tmptext
End Function
=CONTXT((IF($A$2:$A$6=F2,$B$2:$B$6&",","")))
=SUMIF($A$2:$A$6,F2,$C$2:$C$6)