Подсчет отмеченных флажков в запросе без ARRAYFORMULA - PullRequest
0 голосов
/ 16 января 2020

Вчера я узнал, что здесь , что записать в ячейку C1, чтобы получить маленькую таблицу, показанную на добавленном скриншоте, чтобы получить таблицу C1: D4. Это

=ARRAYFORMULA(QUERY({A:A\ B:B*1};"select Col1,sum(Col2) where Col1 is not null group by Col1"))

Можете ли вы объяснить, зачем вам нужна функция ARRAYFORMULA? Есть ли способ просто манипулировать моим запросом в C6

=query(A:B;"select A,count(B) where A is not null group by A")

, чтобы получить тот же результат? Поэтому я хочу манипулировать только строкой запроса "select A,count(B) where A is not null group by A". Я не хочу добавлять дополнительные ARRAYFORMULA.

Screenshot

Ответы [ 2 ]

1 голос
/ 16 января 2020

Формула массива была необходима для преобразования логических значений (true, если отмечен, false, если не отмечен) в диапазоне B: B в числа (0 и 1).

Для решения без Arrayformula попробуйте

=query(A:B; "Select A, count(B) where B = true group by A")

и посмотрите, работает ли это?

0 голосов
/ 16 января 2020

ArrayFormula необходим из-за этого умножения: B:B*1, и это необходимо для преобразования TRUE / FALSE в 1 / 0. и после того, как вы конвертируете его в 1 / 0, вы можете «суммировать» его, что звучит как суммирование, но оно все равно считается, потому что у вас нет большего значения, чем 1.

ваша формула в C6 считается все флажки независимо от того, отмечены они или нет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...