python openpyxl根据TRUE 和FALSE不同的结果编辑单元格不同的背景颜色
时间: 2024-10-17 15:06:03 浏览: 38
在Python中,你可以使用`openpyxl`库来操作Excel文件,并通过`Conditional Formatting`功能设置单元格背景色基于特定条件。如果你想要根据不同值(如TRUE/FALSE)来改变背景颜色,可以按照以下步骤操作:
1. 首先,安装`openpyxl`库,如果尚未安装,可以运行:
```bash
pip install openpyxl
```
2. 导入需要的模块:
```python
from openpyxl import Workbook
from openpyxl.styles import PatternFill, Color
```
3. 打开或创建一个工作簿:
```python
workbook = Workbook()
sheet = workbook.active
```
4. 定义条件格式规则:
```python
rule = workbook.conditional_formatting.add_rule(
sheet['A1'], # 设置应用范围,例如'A1:A10'
{'type': 'expression', # 使用表达式条件
'formula': '=AND($A1="TRUE", $B1="FALSE")', # 根据你的需求替换条件
'fill': {'color': 'red'} # 红色背景作为示例,可以根据需要修改
}
)
```
5. 将此规则应用到其他行,这里假设你要应用到整个列:
```python
for row in sheet.iter_rows(min_row=2): # 开始从第二行
rule.formula = f'=AND({row[0].value}="TRUE", {row[1].value}="FALSE")' # 更新每个行的公式
for cell in row:
cell.fill = PatternFill(start_color='red', end_color='red') # 给符合条件的单元格设为红色
```
6. 保存更改:
```python
workbook.save('example.xlsx')
```
阅读全文