使用 openpyxl 将 sheet 附加到现有的 excel 文件

Append a sheet to an existing excel file using openpyxl

我看到这个 post 使用 xlutils.copy 附加一个 sheet:

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

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

在那种情况下,就像打开一个文件并附加到它一样简单,而不是写入或读取:

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

将 return 你的 sheet 有多少行,以便你可以开始写入之后的位置。

我找到了解决方案。非常简单:

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