Строки разного размера в массиве литералов Google Sheets - PullRequest
1 голос
/ 06 октября 2019

Я пытаюсь сделать это в Google Sheets:

={{1}; {1, 1}}

и получить сообщение об ошибке. В ARRAY_LITERAL литералу массива отсутствуют значения для одной или нескольких строк.

Моя конечная цель - сделать что-то вроде этого:

"title A"
IMPORTRANGE("spreadsheet A", A:Z)...
"title B"
IMPORTRANGE("spreadsheet B", A:Z)...
"title C"
IMPORTRANGE("spreadsheet C", A:Z)...
etc...

Желательно, чтобы диапазон импорта также игнорировал пустые строки А. Каждая электронная таблица имеет различное количество столбцов и строк, и все они время от времени меняются.

1 Ответ

1 голос
/ 06 октября 2019

вам нужно сделать это так:

={{1, ""}; {1, 1}}

и для вашего IMPORTRANGE примера это будет выглядеть так:

={{"title A","","","","","","","","","","","","","","","","","","","","","","","","",""}; 
 IMPORTRANGE("ID", "Sheet1A:Z")}

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

={{"title A", SUBSTITUTE(SPLIT(REPT(12, 25), 2), 1, )};
 IMPORTRANGE("ID", "Sheet1A:Z")}

, что означает: повторите (REPT) число 12 двадцать пять раз (потому что вам нужно охватить диапазон B: Z), это даст вам номер: 121212121212121212121212121212121212121212121212121212121212121212121212121212 и теперь вы будете SPLIT это каждый раз, когда есть номер 2, так что вы получите 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 на 25 ячеек. и чтобы избавиться от этих 1, вы будете SUBSTITUTE номер один даром

или примерно так:

=ARRAYFORMULA({{"title A", SUBSTITUTE(COLUMN(B:Z)^0, 1, )};
 IMPORTRANGE("ID", "Sheet1A:Z")})

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


={{"title A", SUBSTITUTE(SPLIT(REPT(12, 25), 2), 1, )};
 IMPORTRANGE("ID1", "Sheet1A:Z");
  {"title B", SUBSTITUTE(SPLIT(REPT(12, 25), 2), 1, )};
 IMPORTRANGE("ID2", "Sheet1A:Z");
  {"title C", SUBSTITUTE(SPLIT(REPT(12, 25), 2), 1, )};
 IMPORTRANGE("ID3", "Sheet1A:Z")}

, чтобы избавиться от пустых строк, вы можете сделать что-то вроде:

=QUERY({{"title A", SUBSTITUTE(SPLIT(REPT(12, 25), 2), 1, )};
        IMPORTRANGE("ID1", "Sheet1A:Z");
        {"title B", SUBSTITUTE(SPLIT(REPT(12, 25), 2), 1, )};
        IMPORTRANGE("ID2", "Sheet1A:Z");
        {"title C", SUBSTITUTE(SPLIT(REPT(12, 25), 2), 1, )};
        IMPORTRANGE("ID3", "Sheet1A:Z")}, 
 "where Col1 is not null", 0)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...