2013-10-18 21:03:56 +0000 2013-10-18 21:03:56 +0000
12
12

Как объединить данные из нескольких файлов Excel в один файл Excel или базу данных доступа?

У меня есть несколько дюжин файлов Excel, которые имеют один формат (т.е. 4 рабочих листа на файл Excel). Мне нужно объединить все файлы в 1 главный файл, который должен иметь только 2 из 4 рабочих листов. Соответствующие рабочие листы из каждого файла Excel называются точно так же, как и заголовки столбцов.

Хотя каждый файл структурирован одинаково, информация внутри листа 1 и 2 (например) разная. Поэтому ее нельзя объединить в один файл со всем, что находится на одном листе!

Я никогда раньше не пользовался VBA, и мне интересно, с чего бы начать эту задачу!

Ответы (5)

7
7
7
2013-10-21 10:39:29 +0000

См. дополнение Мастер консолидации рабочих листов для Excel

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

Надстройка является программным обеспечением, но она имеет 15-дневную полнофункциональную пробную версию (кнопка скачать в верхней части страницы), так что вы можете объединить тысячи ваших рабочих книг бесплатно :)

4
4
4
2016-05-20 17:57:22 +0000

Сегодня я наткнулся на эту ссылку RDBMerge, Excel Merge Add-in for Excel for Windows , которая, как я думаю, будет служить цели, это бесплатный инструмент на основе макросов.

4
4
4
2016-10-25 22:45:42 +0000

Здесь это решение в Питоне.

import glob
import pandas as pd

path = "<path to files>"
file_identifier = "*.xlsx"

all_data = pd.DataFrame()
for f in glob.glob(path + "/*" + file_identifier):
    df = pd.read_excel(f)
    all_data = all_data.append(df,ignore_index=True)
3
3
3
2013-10-18 21:36:29 +0000

Поскольку вы хотели, чтобы они были на одном листе, я думаю, что вышесказанное не то, что вы искали.

я использую Microsoft Access для слияния данных. Особенно, если разные листы имеют похожий идентификатор (номер детали/контактное лицо/элемент).

Вы создаете “таблицу” для каждой объединяемой электронной таблицы Вы создаете “запрос”, который тянут нужные колонки на один лист.

0
0
0
2013-10-18 21:28:57 +0000
  1. Откройте все рабочие книги Excel в одном экземпляре Excel.
  2. Вам, возможно, придется нажать внутреннюю кнопку “восстановить”, чтобы увидеть отдельные рабочие книги.
  3. Выберите все листы, которые вы хотите переместить, с помощью Ctrl+Щелчок по вкладкам рабочих листов.
  4. Щелкните правой кнопкой мыши по одной из выбранных вкладок и выберите Move или Copy…
  5. В появившемся диалоге выберите целевую рабочую книгу (вашу “Master” рабочую книгу), а затем выберите, куда их вставлять.
  6. Опция (перемещение в конец), скорее всего, то, что вы хотите, но вы всегда можете переупорядочить их позже.
  7. Выберите Создать копию, если вы не хотите, чтобы листы были удалены из первой рабочей книги
  8. Нажмите OK.

Выбранные листы будут перемещены или скопированы из оригинальной рабочей книги в вашу “Master” рабочую книгу. Просто закройте исходную рабочую книгу и сделайте это снова со следующей, пока вы не соберете все рабочие листы, о которых вы заботитесь, в одну большую рабочую книгу. Обязательно сохраните!

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

6
13
9
10
6