如何将数据从多个Excel文件合并到单个Excel文件或Access数据库中?


13

我有几十个格式相同的excel文件(即每个Excel文件4个工作表)。我需要将所有文件组合到1个主文件中,该文件必须只有4个工作表中的2个。每个Excel文件中对应的工作表的命名与列标题的命名完全相同。

尽管每个文件的结构相同,但工作表1和2中的信息(例如)不同。因此,不能将所有内容合并到一个文件中!

我以前从未使用过VBA,而且想知道在哪里可以开始此任务!

Answers:


3

由于您希望将它们放在一张纸上,因此我认为以上并不是您想要的。

我使用Microsoft Access合并数据。特别是,如果不同的纸张具有相似的标识符(零件号/联系人/身分)。

您为要合并的每个电子表格创建一个“表”您创建一个“查询”,它将所需的列拉到一张工作表



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
总是惊讶于使用几行python可以做什么!
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. 单击确定

所选工作表将从原始工作簿中移动或复制到您的“主”工作簿中。只需关闭源wookbook,然后对下一个wookbook再做一次,直到将所有您关心的工作表收集到一个大wookbook中即可。确保保存!


是的,可与Excel 2010中
Keks剂量
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.