Google Sheets – один из крутейших инструментов для работы с данными. Он позволяет обрабатывать данные в визуально понятном виде, именно поэтому у него такая огромная база поклонников, включающая в себя маркетологов, аналитиков (хотя большинство все равно выбирает более традиционный Excel), предпринимателей и студентов.
классная статья. сам сталкивался на неделе с задаче по сложным фильтрам в гугл таблицах. но у меня использовалась функция Query.
но я решал задачу через нейросети) сам бы никогда не написал ту формулу что получилась) а нейросеть шмагла)
=QUERY('База'!A:K; "SELECT * WHERE " & CHAR(64 + MATCH("Подрубрика"; 'База'!1:1; 0)) & " matches '" & TEXTJOIN("|"; TRUE; 'Подрубрики'!B:B) & "'")
Я до сих пор не понимаю как она работает) но главное результат) ну и пару часов времени игр с нейросетью. но теперь под повторяющуюся задачу есть готовое решение)
Виталий, приветствую!
Спасибо за комментарий и огромное спасибо за такой интересный пример!
У вас в запросе, по сути, сказано:
"
Возьми из листа "База" колонки А–К, покажи мне все колонки и выведи строки, где значения из колонки "Подрубрика" соответствуют одному из значений на листе "Подрубрики" в колонке В.
"
Функция QUERY в целом считается всемогущей) и относится к профессиональным решениям, потому что для ее использования надо знать базовый SQL.
Очень симпатичное решение получилось. Оно будет подстраиваться под незначительные изменения в листах и работать стабильно и быстро.
В рамках темы статьи, предложу решение с помощью функции FILTER:
=FILTER('База'!A:K; MATCH([буква колонки с подрубрикой] (записать надо в таком виде: A:A) ; 'Подрубрики'!B:B; 0)
Но тут сразу появится проблема с названиями колонок, а ваше решение супер крутое.
А какой нейросеткой пользовались?
Как с помощью этой функции вывести строки, кроме тех, которые содержат значения "Яблочко"? Прочие возможные значения не известны
Андрей, по аналогии с примерами из статьи, нам нужно выбрать только те значения которые не являются или не содержат слово "Яблочко".
Если задача максимально тривиальная и строки содержат конкретно слово "яблочко" или како-либо другое, то можно просто =FILTER ( [диапозон]; NOT ([диапозон] = "Яблочко"))
Если строка именно содержит слово яблочко внутри контекста, то надо проверить строку на содержание регулярного выражения, это лучше сделать через REGEXMATCH, чтобы получить true или false
=FILTER ( [диапозон]; NOT (REGEXMATCH ([диапозон]; "(?i)яблочко")))