我正在尝试获取不同数量的csv文件,并将它们作为每个csv文件的新工作表复制到现有的excel工作簿中。问题是我将它们复制到已有2张纸的模板中。使用我当前的代码,这些模板表将被覆盖。我已经看到很多关于类似问题的问题,并且没有找到将csv文件添加到现有工作簿而不覆盖当前工作表的问题。这是我一直在使用的:
import os
import glob
import csv
from xlsxwriter.workbook import Workbook
workbook = Workbook('Summary_Template.xlsx')
for csvfile in glob.glob(os.path.join('.', '*.csv')):
csvfile = os.path.basename(csvfile)
worksheet = Workbook.add_worksheet(workbook) #wroskeet with csv file name
with open(csvfile, 'rb') as f:
reader = csv.reader(f)
for r, row in enumerate(reader):
for c, col in enumerate(row):
worksheet.write(r, c, col) #write the csv file content into it
workbook.close()
我尝试使用xlwt模块的类似版本,但我的csv文件有超过65535行,导致此模块出错。除此之外我不关心使用什么模块,我只需要将csv文件附加到我的模板而不覆盖现有的工作表。
由于我已成功将所有csv文件放入.xls工作簿中,因此我想找到合并两个工作簿的方法。任何帮助将不胜感激。