Невозможно динамически редактировать ссылочные значения в функции запроса - PullRequest
0 голосов
/ 17 января 2020

Мне интересно, возможно ли создать динамически изменяемый диапазон в функции QUERY?

Ниже приведена формула, которая работает в настоящее время, с диапазоном stati c в первом эталоне запрос ($A$2:$AO$11)

=QUERY('External Tab'!$A$2:$AO$11,"SELECT "&SUBSTITUTE(ADDRESS(1,MATCH("Account" ,'External Tab'!$A$2:$AO$2,0),4),1,""))

В идеале, я бы мог динамически изменять значение 11, основываясь на количестве строк, которые содержат либо Live, либо Pending в своей строке. Таким образом, когда запрос извлекается, он возвращает указанное c количество строк из этой таблицы.

В нынешнем виде, если таблица, на которую она ссылается, отредактирована так, чтобы быть длиннее 11 строк, она не будет извлекать все данные. Я также не могу указать здесь произвольно большое число, чтобы учесть это, поскольку запрос затем начнет вводить данные дальше по рабочему листу, который я не хочу видеть.

pic of current query

При попытке решить эту проблему, я могу получить количество строк, используя вместе 2 COUNTIF формулы:

=COUNTIF('External Tab'!A:AO,"Live")+COUNTIF('External Tab'!A:AO,"Pending")

В приведенном выше примере эта автономная формула возвращает правильное значение из 10 В идеале это будет динамически создавать диапазон в запросе $A$2:$A:10 (вместо stati c 11, который он имеет в настоящее время). Можно ли вложить результат этой формулы, чтобы сделать ссылку на строку в диапазоне динамически c?

1 Ответ

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

Используйте смещение + ваше решение для подсчета.

Do:

=QUERY(OFFSET('External Tab'!$A$2,0,0,(COUNTIF('External Tab'!A$1:AO$65536,"Live")+COUNTIF('External Tab'!A$1:AO$65536,"Pending"))-1,1),"SELECT "&SUBSTITUTE(ADDRESS(1,MATCH("Account" ,'External Tab'!$A$2:$AO$2,0),4),1,""))

Обратите внимание, что я поставил «-1», поскольку необходимое значение для подачи на смещение равно 10, если количество предметов - 11.

Попробуйте. (:

Пожалуйста, поделитесь, если это работает / не / понятно.

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