【发布时间】:2021-07-13 06:38:24
【问题描述】:
我正在尝试将文件夹中的所有 .xlsx 文件合并到一个工作簿中,同时保持它们的工作表分开。我下面的代码是抓取指定的文件,将它们合并到一个工作簿中,但只复制每个文件中的第一个工作表,而不是所有工作表。
我的输出文件目前是一个工作簿,其中包含每个合并文件的第一个工作表,但有些文件有多个工作表。有谁知道我如何从多个文件中获取所有工作表并将它们合并到一个工作簿中?
感谢您的宝贵时间!
import win32com.client as win32
import os
excel = win32.gencache.EnsureDispatch('Excel.Application')
wb = excel.Workbooks.Add()
path = r'C:\Users\Desktop\merge'
files = os.listdir(path)
for f in [os.path.join(os.getcwd(), "Daily Pipeline"), os.path.join(os.getcwd(), "Loans")]:
w = excel.Workbooks.Open(f)
w.Sheets(1).Copy(wb.Sheets(1))
wb.SaveAs(os.path.join(os.getcwd(), "Final.xlsx"))
excel.Application.Quit()
【问题讨论】: