Добавление имени исходного листа с помощью IMPORTRANGE, ЗАПРОС, в формулу массива

#arrays #google-sheets #import #label #google-query-language

Вопрос:

По сути, я пытаюсь импортировать несколько разных вкладок из одного документа Google Sheets, а затем объединить эти данные в отдельную отдельную вкладку в другом документе Google Sheets с дополнительным столбцом, указывающим, с какого листа эти данные были первоначально получены.

Итак, для примера, если мой сводный лист был здесь: https://docs.google.com/spreadsheets/d/1855Y-TzHtXZi-0g_-Jh8LxuqI0rdJasoSKi9YBkGfs8/edit#gid=0

И мои необработанные данные поступали с нескольких листов / вкладок (в этом примере хранятся 1 и 2) здесь: https://docs.google.com/spreadsheets/d/1yar_i4-KdVOT-IgjgUNij48R9yuH-gFNprZgl0X7S94/edit#gid=0

Что можно добавить к моей действующей в настоящее время формуле:

 =ArrayFormula(QUERY({
(IMPORTRANGE("https://docs.google.com/spreadsheets/d/1yar_i4-KdVOT-IgjgUNij48R9yuH-gFNprZgl0X7S94/edit#gid=0","'Store 1'!A2:G"))
},"select * where Col1 is not Null"))
 

чтобы убедиться в таблице агрегации, я могу определить, откуда изначально были получены эти данные, указав это имя исходного листа / вкладки (сохранить 1 или 2) в столбце?

Я добился некоторого успеха, используя аналогичную формулу в прошлом, чтобы выполнить то же самое:

     =ArrayFormula(QUERY({
'Store1'!A2:G,IF(N('Store1'!A2:G),"Store1");
'Store2'!A2:G,IF(N('Store2'!A2:G),"Store2")
},"select * where Col1 is not Null"))
 

Но добавление функциональности IMPORTRANGE в этом случае, похоже, не позволяет этому работать: (

Не стесняйтесь редактировать этот пример таблицы агрегатора

Если я здесь совершенно не на том пути, не стесняйтесь, дайте мне знать, просто хотел поделиться тем, что было опробовано.

Заранее большое спасибо за помощь!

Ответ №1:

попробуйте:

 =QUERY({
 QUERY(IMPORTRANGE("1yar_i4-KdVOT-IgjgUNij48R9yuH-gFNprZgl0X7S94", "Store 1!A2:G"), 
 "select Col1,Col2,Col3,Col4,Col5,Col6,Col7,'Store 1' label 'Store 1'''");
 QUERY(IMPORTRANGE("1yar_i4-KdVOT-IgjgUNij48R9yuH-gFNprZgl0X7S94", "Store 2!A2:G"), 
 "select Col1,Col2,Col3,Col4,Col5,Col6,Col7,'Store 2' label 'Store 2'''")}, 
 "where Col1 is not null")
 

введите описание изображения здесь