@maksqt

Как убрать ошибку при составлении массива из нескольких диапазонов?

в литерале массива указанном в функции array_literal отсутствуют значения одной или нескольких строк.
Вот такая ошибка начала только недавно появляться. Пару дней назад еще все было хорошо.
Я заливаю данные из одной таблицы из разных листов. Все работало, но теперь нет.

=QUERY({
 importrange('Ссылки'!A2;'Ссылки'!B2); 
 importrange('Ссылки'!A2;'Ссылки'!B3); 
 importrange('Ссылки'!A2;'Ссылки'!B4); 
 importrange('Ссылки'!A2;'Ссылки'!B5); 
 importrange('Ссылки'!A2;'Ссылки'!B6); 
 importrange('Ссылки'!A2;'Ссылки'!B7) 
 })


Если убрать последнюю строчку с В7, то все работает, с ней не хочет. Но Отдельно В7 работает. Не знаю почему вместе не хотят работать.
  • Вопрос задан
  • 496 просмотров
Решения вопроса 2
oshliaer
@oshliaer Куратор тега Google Sheets
Google Products Expert
  • Проверяйте размеры диапазонов
  • Проверяйте возвращаемые типы для каждой колонки
  • Не нарушайте правила
Ответ написан
Комментировать
Geleoss
@Geleoss
Любитель таблиц
Ошибка "В литерале массива, указанном в функции ARRAY_LITERAL, отсутствуют значения одной или нескольких строк." возникает когда в массиве/диапазоне различное число элементов в столбцах. Например, задание такого массива тоже приведёт к ошибке:
={ "1st_row 1st_col" \ "1st_row 2nd_col" ;
   "2nd_row 1st_col" \ "2nd_row 2nd_col" \ "2nd_row 3rd_col" }

Т.е. если максимальное количество столбцов в массиве - 3, то и во всех строках должно быть строго по 3 столбца.

Для того, чтобы избежать такой ошибки используйте VSTACK. Например, пример выше будет выглядить так:
=VSTACK(
  { "1st_row 1st_col" \ "1st_row 2nd_col" };
  { "2nd_row 1st_col" \ "2nd_row 2nd_col" \ "2nd_row 3rd_col" }
)

В данном случае, в 1 строке 3 столбце будет #N/A (В ячейке отсутствует значение). Чтоб этого избежать, нужно обернуть VSTACK в IFNA(): =IFNA( VSTACK( {...} ; {...} ) )
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы