ValueError: row index was 65536, not allowed by .xls format

ValueError: row index was 65536, not allowed by .xls format

目前,我正在尝试使用 xlwt 编辑现有的 excel 文件。我不想直接在excel上编辑,所以我先复制一份。

new_wb = xlutils.copy(file_location)

从这个副本开始,我使用 xlwt 模块将新列写入新复制的 excel 文件并保存。但是,当我尝试复制时出现错误:

ValueError: row index was 65536, not allowed by .xls format

我有点困惑,因为我复制的文件是一个xlsx文件,而不是xls。我从不在我的代码中使用 xls 格式。

任何指导将不胜感激。

试试 openpyxl。它支持 .xlsx 文件。

.xls 文件的行数限制为 65,536。 xlsutils 可能不支持 .xlsx 文件。

您可以尝试这样做,看看是否有效:

from openpyxl import Workbook, load_workbook

wb = load_workbook('filename.xlsx')
wb = Workbook(write_only=True)
.
.
.
(make your edits)
.
.
.
wb.save('new_filename.xlsx')

对于遇到与 pandas' DataFrame.to_excel() 相同问题的人的简短解决方案:如果您要保存到 .xls 扩展名,只需将其更改为 .xlsx 扩展名。