@maratmd

Как использовать sumifs в сочетании с array_constrain и ArrayFormula?

Привет, нужна помощь. Есть таблица с данными о звонках, которая постоянно пополняется
658959f26447e234790658.jpeg
Мне нужно на другом листе напротив каждой даты поставить сумму количества минут из колонки G2:G, при условии что совпадает дата H и совпадает тип звонка B параметр "incoming"
65895b1d0b9b8694324909.jpeg
Пытаюсь вставить в E2 формулу =ARRAY_CONSTRAIN(ArrayFormula(СУММЕСЛИМН(hook!G2:G;hook!H2:H;A2:A;hook!B2:B;"incoming"));Tools!B10;1) но почему-то заполняется только одно это поле, остальные автоматом не заполняются. Данные Tools!B10 это количество строк.

Рядом поле с формулой счет если много, он срабатывает, и автоматически прописывает нужное количество строк информацией.

Если есть кто может помочь, буду признателен
  • Вопрос задан
  • 241 просмотр
Решения вопроса 1
ProgrammerForever
@ProgrammerForever Куратор тега Google Sheets
Учитель, автоэлектрик, программист, музыкант
Как минимум - даты в лоб не сравнить, нужно округлять или в текст преобразовывать.
=ARRAYFORMULA(let(
  author;   "@ProgrammerForever";

  dates;     hook!A2:A;
  type;     hook!B2:B;
  duration; hook!G2:G;
  
  lookupdates;A2:A;
  
  timestampTodate;lambda(unixTimestamp;(unixTimestamp/86400000)+ДАТА(1970;1;1));
  toSqldate;lambda(d;ТЕКСТ(d;"yyyy-mm-dd"));
  remove_header;lambda(data;query({data};"SELECT * OFFSET 1";0));
  
  data;remove_header(query({toSqldate(timestampTodate(dates))\duration};"SELECT Col1, Sum(Col2) GROUP BY Col1"));
  out;ЕСЛИОШИБКА(ВПР(toSqldate(lookupdates);data;2;0));
  
  ЕСЛИ(lookupdates="";;out)
))
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы