Як об'єднати дані з декількох файлів Excel в єдиний файл Excel або базу даних доступу?


13

У мене є кілька десятків файлів excel, які мають однаковий формат (тобто 4 робочих аркуша на файл Excel). Мені потрібно об'єднати всі файли в один головний файл, який повинен мати лише 2 з 4 робочих аркушів. Відповідні робочі таблиці кожного файлу Excel названі точно так само, як і заголовки стовпців.

Хоча кожен файл структурований однаково, інформація в аркушах 1 і 2 (наприклад) різна. Тож його неможливо об'єднати в один файл із усім на одному аркуші!

Я ніколи раніше не використовував VBA, і мені цікаво, з чого я можу почати це завдання!

Відповіді:


3

Оскільки ви хотіли їх на одному аркуші, я думаю, що вище не те, що ви шукали.

Я використовую Microsoft Access для об'єднання даних. Особливо, якщо різні аркуші мають аналогічний ідентифікатор (номер деталі / контактна особа / ін.).

Ви створюєте "таблицю" для кожної електронної таблиці, яку потрібно об'єднати. Ви створюєте "запит", який перетягує потрібні стовпці на один аркуш


7

Перегляньте надбудову Майстра консолідованих робочих таблиць для Excel

У додатку є кілька режимів злиття, один з них робить саме те, що вам потрібно.

Будь ласка, перегляньте це посилання для детального опису режиму (як поєднувати аркуші з однаковою назвою до одного)

Додаток - це загальнодоступне програмне забезпечення, але воно має 15-денну повністю функціональну пробну версію (кнопка завантаження вгорі сторінки), тому ви можете безкоштовно об'єднати тисячі своїх робочих книжок :)


5

Ось рішення в python.

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)

1
завжди вражає те, що ти можеш зробити з кількома рядками пітона!
TimoSolo

2
щоб виписати файл, використовуйте щось подібне: writer = pd.ExcelWriter('merged.xlsx', engine='xlsxwriter') \n all_data.to_excel(writer, sheet_name='Sheet1') \n writer.save()
TimoSolo


0
  1. Відкрийте всі робочі книги Excel в тому самому екземплярі Excel.
    • Можливо, вам доведеться натиснути внутрішню кнопку "відновити", щоб побачити окремі робочі зошити.
  2. Виберіть усі аркуші, які ви хочете перемістити, Ctrlнатискаючи + Клацання на вкладках робочого аркуша.
  3. Клацніть правою кнопкою миші одну з вибраних вкладок і виберіть Перемістити або Скопіювати ...
  4. У діалоговому вікні, що з'явилося, виберіть цільову робочу книжку (свою "головну" робочу книжку) і виберіть, куди їх вставити.
    • Опція (перехід до кінця) - це, мабуть, те, що ви хочете, але ви завжди можете їх переупорядкувати пізніше.
    • Виберіть « Створити копію», якщо ви не хочете, щоб аркуші були видалені з першої робочої книги
  5. Натисніть кнопку ОК .

Вибрані робочі аркуші будуть переміщені або скопійовані з оригінальної робочої книги до вашої робочої книги "Майстер". Просто закрийте початкову книжку-книгу і зробіть це знову з наступною, поки ви не зіберете всі робочі аркуші, які вам цікаві, в одну велику вук-книгу. Не забудьте зекономити!


Так, працює з Excel 2010.
Keks Dose
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.