@Julia_11

Как сопоставить данные таблиц, если количество строк в них разное?

Мне необходимо дополнить одну таблицу данными из другой. Я использую функцию QUERY, но из-за того, что массивы данных разные (именно количество строк не совпадает), я вижу ошибку "В литерале массива, указанном в функции ARRAY_LITERAL, отсутствуют значения одной или нескольких строк.".
Приведу пример формулы, которую использовала:

=QUERY({'Лист1'!A:J;'Лист2'!A:G},"select 'Лист2'!E where 'Лист2'!D='Лист1'!n and 'Лист2'!B='Лист1'!Cn")

То есть, при выполнении условий, в ячейку должно подтянуться значение из таблицы на Листе2. Но это не работает.
Как можно обойти эту ошибку, если привести таблицы к одинаковому количеству данных - нельзя?
Например, можно ли сделать так, чтобы если по критериям поиска ничего нет, то в ячейке отображалось " нет данных" или что-то подобное?
  • Вопрос задан
  • 80 просмотров
Решения вопроса 1
@ivan-kis86
У вас ошибка в массиве данных {'Лист1'!A:J;'Лист2'!A:G}. он имеет разное количество колонок. Нужно привести в одному виду этот массив. А для формулы QUERY это все будет одним массив. и она не будет сопоставлять.
Для решения это задачи лучше использовать XLOOKUP.
Лист1 - это исходные данные
Лист2 - это новые данные
На лист2 делаете объединение колонок через & для ключа по которому будете делать поиск.
а на листе1 пишите формулу XLOOKUP и в запросе объединяете значения через &, и делаете поиск по новой колонку где у вас так же есть объединенный запрос.
Надеюсь понятно объяснил.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
А по каким столбцам их нужно сопоставить? Там и даты есть и наименования всякие ...
Вообще это делает функция VLOOKUP
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы