具有多个条件的 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
.
我正在尝试使用 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
.