具有多个条件的 xlsxwriter 条件格式公式

xlsxwriter conditional format formula with multiple criteria

我正在尝试使用 xlsxwriter 将条件格式应用于我的 excel 文件,但不确定如何针对两个条件进行编码。仔细阅读文档后,我只看到一个示例。

具体地说,当值 (H13) 大于 (H5) AND > (H6) 时,颜色为绿色。

以下是我的尝试,但没有成功。我相信这只是一个语法问题。

worksheet.conditional_format('H13:H13', {'type': 'formula',
                                         'criteria': '=H13 >= $H and H13 > $H ',
                                         'format': green_bg})

在所有此类情况下,最好先弄清楚 Excel 中的条件格式,然后将其传输到 xlsxwriter。

Excel 不允许像您的示例那样的 joined/union 条件格式条件。相反,您需要使用 AND() 之类的东西。像这样:

import xlsxwriter

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

green_bg = workbook.add_format({'bg_color': '#C6EFCE',
                                 'font_color': '#006100'})


worksheet.write('H5', 2)
worksheet.write('H6', 5)
worksheet.write('H13', 9)

worksheet.conditional_format('H13:H13', {'type': 'formula',
                                        'criteria': '=AND($H >= $H, $H > $H)',
                                        'format': green_bg})

workbook.close()

输出:

不过,这里的逻辑说法有点可疑。它实际上与 $H > $H 相同。也许你想说 ..., $H < $H.