Как получить источник формулы ARRAY в сочетании с QUERY в Google Sheets - PullRequest
0 голосов
/ 25 марта 2020

У меня есть электронная таблица, в которой каждая вкладка представляет собой месяц (январь, февраль, ..., декабрь), и они имеют одинаковую структуру.

Чтобы объединить всю информацию на одном листе, я использовал массив:

={January!A5:Q;February!A5:Q;March!A5:Q;April!A5:Q;May!A5:Q;June!A5:Q;July!A5:Q;August!A5:Q;September!A5:Q;October!A5:Q;November!A5:Q;December!A5:Q}

Но я хотел отфильтровать записи каждого месяца по некоторым условиям, поэтому я использовал функцию QUERY:

=QUERY({January!A5:Q;February!A5:Q;March!A5:Q;April!A5:Q;May!A5:Q;June!A5:Q;July!A5:Q;August!A5:Q;September!A5:Q;October!A5:Q;November!A5:Q;December!A5:Q},"select * where Col3 = 'X'",0)

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

Как это сделать?

1 Ответ

2 голосов
/ 25 марта 2020

try:

=ARRAYFORMULA(QUERY({
 January!A5:Q,   January!Z5:Z&"January"; 
 February!A5:Q,  February!Z5:Z&"February"; 
 March!A5:Q,     March!Z5:Z&"March";     
 April!A5:Q,     April!Z5:Z&"April"; 
 May!A5:Q,       May!Z5:Z&"May";
 June!A5:Q,      June!Z5:Z&"June"; 
 July!A5:Q,      July!Z5:Z&"July"; 
 August!A5:Q,    August!Z5:Z&"August";  
 September!A5:Q, September!Z5:Z&"September";
 October!A5:Q,   October!Z5:Z&"October";
 November!A5:Q,  November!Z5:Z&"November";
 December!A5:Q,  December!Z5:Z&"December"}
 "where Col3 = 'X'", 0))

, где столбец Z - пустой столбец

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