В этом вопросе необходимо решить ряд проблем.
- как показать результат, если значение равно 1;
- как объединить эти результаты;
- как поставить запятую между результатами;
- как убрать последний разделитель запятых;
В общем, самый «ленивый» способ - начать делать все по-настоящему вручную, проверяя каждое значение на 1, затем объединяя значения в первой строке и вставляя между ними запятую. Это решает пункты 1,2,3.
Точка 4 решается с помощью LEFT(RESULT,LENGTH(RESULT-2))
, который игнорирует последнюю запятую и ее пробел. IFERROR()
необходим, если в диапазоне нет 1
:
=IFERROR(LEFT(CONCATENATE(
IF(B2=1,B1&", ",""),
IF(C2=1,C1&",","")),
LEN(CONCATENATE(
IF(B2=1,B1&", ",""),
IF(C2=1,C1&", ","")))-2)
,"")