使用openpyxl将工作表附加到现有的Excel文件

时间:2017-01-21 11:58:53

标签: python openpyxl

我看到这篇文章使用xlutils.copy附加工作表:

https://stackoverflow.com/a/38086916/2910740

有没有只使用openpyxl的解决方案?

2 个答案:

答案 0 :(得分:0)

我找到了解决方案。这很容易:

def store_excel(self, file_name, sheet_name):
    if os.path.isfile(file_name):
        self.workbook = load_workbook(filename = file_name)
        self.worksheet = self.workbook.create_sheet(sheet_name)
    else:
        self.workbook = Workbook()
        self.worksheet = self.workbook.active
        self.worksheet.title = time.strftime(sheet_name)
    .
    .
    .
    self.worksheet.cell(row=row_num, column=col_num).value = data

答案 1 :(得分:-2)

我建议将数据存储在CSV文件中,这是一种无处不在的文件格式,专门用于存储表格数据。 Excel和大多数开源的Excel式程序一样完全支持它。

在这种情况下,它就像打开要追加的文件一样简单,而不是写或读:

with open("output.csv", "a") as csvfile:
    wr = csv.writer(csvfile, dialect='excel')
    wr.writerow(YOUR_LIST)

至于Openpyxl:

end_of_sheet = your_sheet.max_row

将返回工作表的行数,以便您可以在此之后开始写入该位置。