Как объединить две таблицы с помощью LibreOffice Calc?

У меня есть две таблицы, каждая на своем листе в одном файле:

Назовите возраст
Алиса 18
Боб 19
Кэрол 20
Дейв 19

Имя Пол
Боб Мале
Дейв Мале
Ева Женский

Я хочу автоматически создать третью таблицу (лист), которая содержит объединенные данные по имени столбца:

Имя Возраст Пол
Боб 19 Мале
Дейв 19 Мале

Поддерживается ли эта операция в LibreOffice Calc?

1 ответ

Решение

Вот простой способ сделать это.

Лист 1:

Лист 2:

Лист 3:

На листе 3 имя и возраст являются просто ссылками на ячейки таблицы 1. Таким образом, A2 содержит:

=Sheet1!A2

А В2 содержит:

=Sheet1!B2

Пол заполняется поиском имени этой строки в таблице 2. Таким образом, C2 содержит:

=VLOOKUP(Sheet3!A2,Sheet2!A:B,2,0)

Обратите внимание, что таблицы 1 и 2 не обязательно должны быть в одном и том же порядке.

Кстати, эти формулы отражают настройки параметров для эмуляции синтаксиса формул Excel в Сервис | Варианты | LibreOffice Calc | Формула.

Редакция для комментария

Вот тривиальный способ адаптировать этот подход для случаев, когда таблицы 1 и 2 не совпадают, и вам нужны только общие записи. Скажем, таблица 2 выглядит как ваш пример:

Существующая формула будет производить это:

Алиса и Кэрол не находят совпадений в Таблице 2. Евы не было в Таблице 1, поэтому для нее тоже не будет совпадений. Включение фильтрации позволяет скрыть записи #N/A:

Если вы хотите иметь чистую таблицу, в которой эти записи фактически отсутствуют, скопируйте и вставьте специальные значения (в LO Calc я выбрал текст и числа, но не формулы), чтобы вставить только не скрытые строки. Это показано в строках 10-12 (обратите внимание на отсутствие скрытых строк).

Другие вопросы по тегам