假设我们要将一个数值单元格根据它的值进行条件格式化,在Excel中可以这样实现:
若要在Python中实现条件格式化,则可以使用openpyxl库。下面是一个根据数值进行颜色填充的示例代码:
from openpyxl import Workbook
from openpyxl.styles import Color, PatternFill, Font, Border
from openpyxl.utils import get_column_letter
from openpyxl.formatting.rule import ColorScaleRule
# 创建一个 Workbook 对象
wb = Workbook()
ws = wb.active
# 生成数字数据
for i in range(1, 11):
for j in range(1, 6):
value = i * j
cell = ws.cell(row=i, column=j, value=value)
# 对单元格进行颜色填充
red = Color(rgb='FFC7CE')
yellow = Color(rgb='FFFF00')
green = Color(rgb='C6EFCE')
fill = PatternFill(start_color=red, end_color=red, fill_type='solid')
fill1 = PatternFill(start_color=yellow, end_color=yellow, fill_type='solid')
fill2 = PatternFill(start_color=green, end_color=green, fill_type='solid')
# 把A1到E10的单元格中数值较小的填充成红色,数值较大的填充成绿色,以此类推
rule = ColorScaleRule(start_type='min', start_color=red, end_type='max', end_color=green)
ws.conditional_formatting.add('A1:E10', rule)
# 保存工作簿
wb.save("test.xlsx")
在上述示例代码中,我们首先生成了一个数值表格,然