您好我正在使用openpyxl并尝试将每个空单元格交换为数字1的单元格,然后最终用红色填充。到目前为止,这是我的代码:
import openpyxl
from openpyxl.styles import Color, PatternFill, Font, Border
from openpyxl.utils import column_index_from_string
#redFill = PatternFill(fill_type=None, start_color='F2DCDB', end_color='F2DCDB')
wb = openpyxl.load_workbook('MRR.xlsx')
sheet = wb["Monthly MRR "]
for r in range(7, 793):
for col in range(4,21):
current_cell = sheet.cell(row=r, column=col).value
if current_cell == None:
current_cell = "LL"
wb.save("updatedMRR.xlsx")
即使我遍历每个项目,它似乎也没有改变任何单元格。
答案 0 :(得分:0)
您应该更改代码,以便引用实际单元格并明确检查并设置其值。您的代码当前会检查该值的副本,然后覆盖该副本,但不会覆盖实际的单元格。
current_cell = sheet.cell(row=r, column=col)
if current_cell.value is None:
current_cell.value = "LL"
PS使用ws.iter_rows()
而不是您自己的计数器。