условное форматирование python для файла excel

avatar
Berny
8 августа 2021 в 19:32
625
1
1

У меня есть существующий файл Excel, я хочу применить условное форматирование к некоторым ячейкам, я пробовал с openpyxl, а теперь с xlsxwriter, в основном это изменение цвета шрифта на серый, если ячейка равна 0:

import xlsxwriter

workbook = xlsxwriter.Workbook(r"C:\Users\simon\REPORT.xlsx")
ws = workbook.get_worksheet_by_name('Summary')

format1 = workbook.add_format({'font_color': '#A6A6A6'})
ws.conditional_format('E21:U49', {'type': 'cell',
                                  'criteria': '==',
                                  'value': '0',
                                  'format': format1})

workbook.close()

Но я продолжаю получать ту же ошибку AttributeError:

AttributeError: 'NoneType' object has no attribute 'conditional_format'
Источник
jmcnamara
8 августа 2021 в 19:45
0

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

Ответы (1)

avatar
Albaraa Ahmed
8 августа 2021 в 19:37
1

Эта ошибка возникает, когда объект пуст, а это означает, что листа с именем Summary может не быть. Проверьте имя листа на наличие опечаток, а также помните, что он чувствителен к регистру.