Невозможно перезаписать существующий лист Excel с помощью openpyxl - PullRequest
0 голосов
/ 05 августа 2020

Я пытаюсь отформатировать листы Excel, используя условие if else, но не могу переписать файл. Код написан ниже.

from openpyxl import load_workbook

sheet_name = "C:\\python\\book.xlsx"
wb = load_workbook(sheet_name)
sheet = wb['Data1']

for row in range(1, sheet.max_row+1):
    print(row)
    value1 = sheet.cell(row, 1).value
    if "st1" in value1:
        value1 = "Invite"
    elif "st2" in value1:
        value1 = "Closed"  
    elif "st3" in value1:
        value1 = "Pending"  
    print(value1)
    wb.save(sheet_name)

Вывод

Closed
Invite
Closed
Pending

Он печатает результат, который я хотел, но не перезаписывает файл Excel. Файл остается без изменений. Как сохранить файл после всех исправлений?

1 Ответ

0 голосов
/ 05 августа 2020

в вашем коде отсутствует часть, в которой вы записываете свой вывод в ячейку в файле Excel:

sheet.cell(row, 1).value = value1

Также я бы поместил wb.save за пределами for l oop.

...