Conditional Formatting xlwt

2019-06-18 15:17发布

I have seen some posts that say you can NOT perform conditional formatting using xlwt, but they were rather old. I was curious if this has evolved?

I have been searching for about half a day now. Furthermore, if I con't write it directly from xlwt, can I create an .xls file containing a single cell with the conditional format I want and have xlrd read that format and paste it into the sheet I aim to produce then using xlwt?

2条回答
孤傲高冷的网名
2楼-- · 2019-06-18 15:33

True that xlswriter makes formatting pretty easy, but i think it can not be used for appending data tpsheets, which i feel is a big drawback.

查看更多
手持菜刀,她持情操
3楼-- · 2019-06-18 15:54

xlrd and xlwt still don't support conditional formatting. xlrd doesn't read it, xlwt doesn't write it.

There is a new and awesome module, called xlsxwriter. It does support conditional formatting out of the box. The project is active, documentation is pretty good. Plus, there are a lot of examples.

Here's an example:

from xlsxwriter.workbook import Workbook

workbook = Workbook('test.xlsx')
worksheet = workbook.add_worksheet()

worksheet.write('A1', 49)
worksheet.write('A2', 51)

format1 = workbook.add_format({'bold': 1, 'italic': 1})
worksheet.conditional_format('A1:A2', {'type': 'cell',
                                       'criteria': '>=',
                                       'value': 50,
                                       'format': format1})
workbook.close()
查看更多
登录 后发表回答