Присоединяйтесь к importrange и Query

Мне нужен запрос, который возвращает Sheet_1

A | B | C 
1 | 2 | 3
4 | 5 | 6

Лист_2

D | E | F | G | H | I | 
0 | 1 | 2 | 3 | 4 | 5 |
6 | 7 | 8 | 9 | 0 | 1 |
2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 0 | 1 | 2 | 3 |
4 | 5 | 6 | 7 | 8 | 9 |
0 | 1 | 2 | 3 | 4 | 5 |

Присоединиться к результатам

A | B | C | D | E | F | G | H | I |
1 | 2 | 3 | 0 | 1 | 2 | 3 | 4 | 5 |
4 | 5 | 6 | 6 | 7 | 8 | 9 | 0 | 1 |
  |   |   | 2 | 3 | 4 | 5 | 6 | 7 |
  |   |   | 8 | 9 | 0 | 1 | 2 | 3 |
  |   |   | 8 | 9 | 0 | 1 | 2 | 3 |
  |   |   | 4 | 5 | 6 | 7 | 8 | 9 |
  |   |   | 0 | 1 | 2 | 3 | 4 | 5 |

Это возможно с query и importrange в Google Sheets?


person Wellington Jesus    schedule 10.08.2019    source источник


Ответы (1)


использовать:

=QUERY({Sheet_1!A1:C100, Sheet_2!D1:I100}, "where Col4 is not null", 0)

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


ОБНОВИТЬ:

в вашем случае вам понадобятся 3 типа формул, потому что ваш набор данных недостаточно однороден. поэтому создайте новую таблицу и импортируйте (с формулой IMPORTRANGE) все рынки на отдельных листах:

0

затем создайте ОСНОВНОЙ лист, в котором вы объедините все данные со всех рынков

в ячейке A1:

=ARRAYFORMULA({market1!A1:J2, TRANSPOSE(QUERY(TRANSPOSE({
 market1!K1:2, market2!K1:2}), "where Col2 is not null", 0))})

0


в ячейке A3:

=QUERY({market1!A3:J; market2!A3:J}, "where Col2 is not null", 0)

0


а затем вставьте это в ячейку K3 и перетащите вправо:

=ARRAYFORMULA(IFERROR(VLOOKUP($B3:$B, QUERY({
 market1!$B3:$B, IFERROR(INDIRECT("market1!"&ADDRESS(3, MATCH(K1, market1!$A1:1, 0), 4)&":"&ADDRESS(ROWS(market1!$A:$A), MATCH(K1, market1!$A1:1, 0), 4)), REGEXREPLACE(market1!$B3:$B,".*",));
 market2!$B3:$B, IFERROR(INDIRECT("market2!"&ADDRESS(3, MATCH(K1, market2!$A1:1, 0), 4)&":"&ADDRESS(ROWS(market2!$A:$A), MATCH(K1, market2!$A1:1, 0), 4)), REGEXREPLACE(market2!$B3:$B,".*",))},
 "where Col1 is not null", 0), 2, 0)))

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

person player0    schedule 10.08.2019
comment
Является ли частью «метода» в этом ответе размещение второго диапазона, начинающегося в столбце D, чтобы он был рядом с первым диапазоном? Я спрашиваю, потому что такой дурак, как я, предположил бы, что второй диапазон также находится в столбце A, и провел бы день, пытаясь соединить два диапазона, каждый из которых содержит «ColA, ColB и ColC». - person Tedinoz; 11.08.2019
comment
нисколько. если ваши данные в листе 2 начинаются со столбца A, вы можете иметь =QUERY({Sheet_1!A1:C100, Sheet_2!A1:F100}, "where Col4 is not null", 0) - person player0; 11.08.2019
comment
Я пытаюсь, но возвращаю ошибку. см.... =ЗАПРОС({ IMPORTRANGE(Id; Анализы по типам!K6:BG ); IMPORTRANGE(Id; Анализы по типам!K6:P); IMPORTRANGE(Id; Анализы по типам!K6:T); IMPORTRANGE(Id ; Анализы по типам!K6:AA); IMPORTRANGE(Id; Анализы по типам!K6:O); IMPORTRANGE(Id; Анализы по типам!K6:AK); IMPORTRANGE(Id; Анализы по типам!K6:AF); IMPORTRANGE (Id; Анализы по типам!K6:AO) }; ГДЕ Col5 НЕ NULL ) - person Wellington Jesus; 11.08.2019
comment
Нравиться? Извините, я не говорю по-английски... мне трудно писать правильно... Помогите мне, пожалуйста!!! - person Wellington Jesus; 11.08.2019
comment
попробуй: =QUERY({IMPORTRANGE("Id"; "Analyses by Types!K6:BG100")\ IMPORTRANGE("Id"; "Analyses by Types!K6:P100")\ IMPORTRANGE("Id"; "Analyses by Types!K6:T100")\ IMPORTRANGE("Id"; "Analyses by Types!K6:AA100")\ IMPORTRANGE("Id"; "Analyses by Types!K6:O100")\ IMPORTRANGE("Id"; "Analyses by Types!K6:AK100")\ IMPORTRANGE("Id"; "Analyses by Types!K6:AF100")\ IMPORTRANGE("Id"; "Analyses by Types!K6:AO100")}; "WHERE Col5 IS NOT NULL", 0) - person player0; 11.08.2019