xlswriter下拉列表Excel错误

时间:2017-05-21 04:45:37

标签: python pandas xlsxwriter

对特定列中的所有行应用数据验证,使用以下序列:

import xlsxwriter

workbook = xlsxwriter.Workbook('data_validate2.xlsx')
worksheet = workbook.add_worksheet()

status_col_loc=1
for row in range(1,50000):
    worksheet.data_validation(xlsxwriter.utility.xl_rowcol_to_cell(row,status_col_loc) ,{'validate':'list' ,'source': ['Closed','Pending','Redirected']})
workbook.close()

当应用的行数小于50K时,此方法可以正常工作。但是它会破坏excel文件

Excel xml error

有没有办法在不破坏excel文件的情况下将验证应用于更多的100K行?

1 个答案:

答案 0 :(得分:2)

Excel每个工作表的未记录限制为60,000个唯一的非连续数据验证。

Excel确实支持>通过使用重复验证的优化(60,000之后),获得60,000个非唯一,非连续数据验证。

但是,XlsxWriter不支持此优化,因此您必须将工作表中的数据验证限制为60,000。