Я пытаюсь переключить каждую пустую ячейку на одну, заполненную номером 1 - PullRequest
0 голосов
/ 03 мая 2018

Привет! В настоящее время я использую 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")

Несмотря на то, что я перебираю каждый элемент, кажется, что он не меняет ни одну из ячеек.

1 Ответ

0 голосов
/ 03 мая 2018

Вы должны изменить свой код так, чтобы вы ссылались на фактическую ячейку и явно проверяли и устанавливали ее значение. Ваш код в настоящее время проверяет копию значения, а затем перезаписывает копию, но не фактическую ячейку.

current_cell = sheet.cell(row=r, column=col) if current_cell.value is None: current_cell.value = "LL" PS используйте ws.iter_rows(), а не свой счетчик.

...