Использование косвенного извлечения из нескольких листов для запроса - PullRequest
0 голосов
/ 02 февраля 2019

У меня есть динамический список листов в книге Google.Я надеюсь создать запрос из этих разных листов - хотя я часто добавляю и удаляю листы.

Прямо сейчас мой запрос выглядит, и он прекрасно работает:

=query({'1.17 invoice'!A25:N;'1.31 invoice'!A25:N;'2.1 invoice'!A25:N;'invoice 2.1 (2)'!A25:N},"SELECT Col1, Col2, Col3, Col7, Col12, Col13 where Col1 <> ''",0)

Я могу создать ячейку A1 со значением: '1.17 invoice'! A25: N; '1.31счет-фактура '! A25: N;' счет-фактура 2.1 '! A25: N;' счет-фактура 2.1 (2) '! A25: N

Но сейчас мне нужно скопировать и вставить результаты A1 в формулу запросадля того, чтобы обновить.Когда я пытаюсь создать формулу, например:

=query({indirect(A1)},"SELECT Col1, Col2, Col3, Col7, Col12, Col13 where Col1 <> ''",0)

, я просто получаю сообщение об ошибке, что «результаты косвенного не являются допустимым диапазоном ячеек».Есть ли хороший способ автоматизировать получение списка листов в функцию запроса?

1 Ответ

0 голосов
/ 03 февраля 2019

ОП попытался сделать диапазон массива более гибким.Исходная формула:

=query({'1.17 invoice'!A25:N;
        '1.31 invoice'!A25:N;
         '2.1 invoice'!A25:N;
     'invoice 2.1 (2)'!A25:N},
 "SELECT Col1, Col2, Col3, Col7, Col12, Col13 where Col1 <> ''",0)

ОП ввел диапазон массива в ячейку A1 и изменил формулу:

A1 = '1.17 invoice'!A25:N;'1.31 invoice'!A25:N;'2.1 invoice'!A25:N;'invoice 2.1 (2)'!A25:N

Измененная формула:

=query({indirect(A1)},"SELECT Col1, Col2, Col3, Col7, Col12, Col13 where Col1 <> ''",0)

Это не работает, потому что INDIRECT возвращает одно значение массива, но A1 состоит из нескольких диапазонов.Однако, если каждый из диапазонов объявлен отдельно, запрос будет работать.


Макет:

A1 = '1.17 invoice'!A25:N    
A2 = '1.31 invoice'!A25:N    
A3 = '2.1 invoice'!A25:N    
A4 = 'invoice 2.1 (2)'!A25:N 

Формула:

=query({indirect(A1);
        Indirect(A2);
        indirect(A3);
        Indirect(A4)},
 "SELECT Col1, Col2, Col3, Col7, Col12, Col13 where Col1 <> ''",0)

Кредит:
Рубен (https://webapps.stackexchange.com/a/88726/196152)
Карл_С (https://webapps.stackexchange.com/a/104517/196152)

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