У меня есть следующая задача для моей электронной таблицы Google: строки JOIN во всех ячейках справа от определенного идентификатора.
SELECT A, JOIN(',', B) GROUP BY A, WHERE A = myid;
=JOIN(',', VLOOKUP(A:B, myid, 0))
Возможно ли это с помощью электронных таблиц Google?
пробовать:
=ARRAYFORMULA(SUBSTITUTE(REGEXREPLACE(TRIM(SPLIT(TRANSPOSE(QUERY(QUERY( IF(B2:B<>"", {A2:A&"×", B2:B&","}, ), "select max(Col2) where Col2 !='' group by Col2 pivot Col1") ,,999^99)), "×")), ",$", ), ", ", ","))
Я полагаю, что вы можете использовать функцию FILTER вместо VLOOKUP для фильтрации диапазона на основе идентификатора, а затем JOIN возвращенного диапазона.
FILTER
VLOOKUP
JOIN
Документация для FILTER находится здесь: https://support.google.com/docs/answer/3093197
Например:
=UNIQUE($A:$A)
=IF($D2="", "", JOIN(",", FILTER($B:$B, $A:$A=$D2)))