Openpyxl — цветная ячейка

Привет всем! Сегодня мы узнаем, как разобраться с вопросом: Openpyxl — цветная ячейка.

Предыстория разбирательства очень коротка — пытаюсь доделать (это конечно громко звучит — всего-то логику записи прописать в конечный файл, но времени категорически не хватает 🙁 ) код для завершения задачи по прайсам (об этом я писал ранее), и, дабы итог работы программы выглядел более наглядно решил добавить красоты, а именно: если цена у конкурентов ниже, чем у нас — ячейка должна быть красной, если цена выше нашей — зеленой, если цены равны с нами — желтой. Казалось бы — все просто, но … как это реализовать? А точнее — как ответить на вопрос: Openpyxl — цветная ячейка?

Google знает много вариантов решения данного вопроса, и я не претендую на высшую инстанцию, но мне кажется, что мое решение (появившееся на свет после длительного курения мануалов) не самое плохое:

 import openpyxl #Подключаем библиотеку
from openpyxl import Workbook
from openpyxl.styles import PatternFill
wb = openpyxl.Workbook()#Создали книгу
work_sheet = wb.create_sheet(title='Test sheet')#Создали лист с названием Test sheet
work_sheet['A1'] = 'Test text' #На листе с названием Test sheet в ячейке А1 пишем текст 'Test text'
work_sheet['A1'].fill = PatternFill(fill_type='solid', start_color='fe0101', end_color='fe0101') #В ячейку А1 делаем заливку красного цвета :) ВАЖНО: цвет должен указываться в RGB-формате!
wb.save('test_background.xlsx') #Записываем все в новый файл и радуемся.

Что настораживает - указание начального и конечных цветов. Excel, если я правильно помню - не позволяет делать градиентную расцветку ячейки. Тогда почему тут указывается два цвета? Что мешало сделать просто один в стиле HTML: bgcolor='#FF0000'? Сталкивался ли кто-то из вас с подобным вопросом, и если да - то как вы его решили? И решали ли вообще...? Если да - напишите, пожалуйста, в Телеграм или на почту.

В планах на ближайшее время разобраться, как делать разные варианты шрифтов - жирный, наклонный... Опять же - насколько (и правильно ли) я прочитал в документации - можно корректировать ширину ячеек... скоро... совсем скоро. Или пойму, или нет. Вообщем - следите за новостями, не забывайте ставить лайки и делать репосты, а так же кликать по рекламным баннерам ;)

Support the Blog!

Running a blog takes a lot of effort, time, and passion. Your donations help improve the content, inspire new ideas, and keep the project going.
If you’ve enjoyed the blog’s materials, any support would mean the world to me. Thank you for being here! ❤️

PayPal Logo Donate via PayPal

Revolut Logo Donate via Revolut