Ошибка: Параметр ARRAY_ROW функции 2 имеет несоответствующий размер строки. Ожидаемый: 1. Фактический: 10434

#google-sheets #google-sheets-formula

#google-sheets #google-sheets-формула

Вопрос:

=QUERY({IMPORTRANGE("sheet_name", "Social media posts!A:AI"), IMPORTRANGE("sheet_name", "Social media posts!AJ:AS")},"SELECT Col1, Col43, Col23, Col16, Col12, Col44, Col45, Col2, Col3 WHERE Col2='instagram'", 1)

Выше приведена формула запроса, которую я ввожу. Однако я получил сообщение об ошибке, в котором говорится следующее:

Параметр ARRAY_ROW функции 2 имеет несоответствующий размер строки. Ожидаемый: 1. Фактический: 10434.

Ответ №1:

Проблема:

Вы пытаетесь объединить два массива рядом, которые не имеют одинакового количества строк.

Вы можете соединять массивы в фигурных скобках бок о бок (запятая) только в том случае, если они имеют одинаковое количество строк.

В вашем случае первый массив возвращает 1 строку, а второй возвращает 10434 строки. Вы можете доказать это, если вызовете их по отдельности.

Проблема связана с вашими условиями. Вы запрашиваете две разные части вашего набора данных, но используете одни и те же индексы столбцов. Номера столбцов между каждым запросом соответствуют разным столбцам.

Воспроизводимый пример:

пример

В моем примере это {A3:C6;E3:G4} будет работать совершенно нормально, поскольку ; означает, что второй массив должен быть размещен ниже первого. Следовательно, в данном случае требуется иметь одинаковое количество столбцов.