Идея состоит в том, чтобы создать список настольных игр на основе таких параметров, как количество игроков, время и / или уровень сложности. Я использую функцию QUERY в Google Таблицах.
У меня есть лист со списком настольных игр. У них есть отдельные столбцы для названия, минимального количества игроков, максимального количества игроков, сложности, времени игры.
На втором листе у меня есть 3 ячейки, которые пользователь может использовать для записи количества игроков (B1), сложности (B2) и / или времени воспроизведения (B3).
Идея состоит в том, что со всеми тремя пустыми ячейками ничего не отображается, но затем вы можете заполнить любую или даже все три ячейки, чтобы отфильтровать полный список игр.
Однако, если я использую один запрос со всеми тремя параметрами, если они пусты, я получаю сообщение об ошибке.
Я обошел проблему, используя несколько вложенных IF, которые проверяют, пусты ли какие-либо ячейки. Исходя из этого, он запускает немного другую функцию QUERY (т.е. исключает пустую ячейку). Однако это сложно устранить и будет сложно изменить, если я захочу добавить какие-либо дополнительные параметры.
Это полный запрос:
=QUERY('Lista gier'!A1:H424;"select A,C,D,E,F where C<="&B1&" AND D>="&B1&" AND E='"&B2&"' AND F<="&B12&" AND F>=(0.5*"&B12&") AND B='Gra'");
Ожидаемые результаты - это правильный список игр, но я всегда получаю сообщение об ошибке:
Невозможно проанализировать строку запроса для параметра функции QUERY 2: PARSE_ERROR: обнаружено "" C "" в строке 1, столбце 24. Ожидалось одно из: "(" ... "(" ...