1

Это задача, которую мне часто приходится делать:

У меня есть две таблицы, содержимое которых похоже, но не одинаковое. Допустим, таблица 1 со столбцами A1, B1, C1, ... Таблица 2 с колонками А2, В2, С2, ... Допустим, таблица 1 является более старой версией таблицы 2. Таким образом, в таблице 2 есть записи, которых нет в таблице 1, некоторые записи были удалены, а некоторые изменены. Допустим, A - это столбец id в обеих таблицах.

Если у меня есть данные из этих двух таблиц рядом в листе Excel (A1, B1, C1, ..., A2, B2, C2, ...), как я могу отсортировать их так, чтобы строки, столбцы A которых совпадали в обеих таблицах оказываются рядом друг с другом, и строки, которые содержат данные в одной таблице, но не содержат данных в другой, сортируются отдельно с пустыми столбцами на другой стороне?

Например, столбец А таблицы 1 содержит: 1,2,5,6

Столбец А таблицы 2 содержит: 2,3,6,7,10

Тогда как я могу получить этот результат:

A1 A2
1
2  2
   3
5
6  6
   7
   10

Столбцы B, C и т.д. Должны быть отсортированы рядом со столбцами A.

(Для большей ясности: если бы я делал это с двумя таблицами mysql, это было бы как объединение левого и правого соединения между таблицами 1 и 2 в столбце A1 = A2, отсортированное по объединению (A1, A2).)

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

Решение не должно быть макросом, но я подозреваю, что я не мог бы сделать это без него?

ETA: Обычно я делаю это, чтобы скопировать данные из одной таблицы на листе, отсортировать их по A, затем скопировать данные из другой таблицы на другом листе, отсортировать по A, скопировать их рядом друг с другом, а затем вставить пустой » строки "вручную до половины, где строка отсутствует.

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

0