как менять шрифт и цвет в ячейке

Openpyxl – як міняти шрифт і колір у осередку?

Привіт всім! Продовжуючи статті, присвячені роботі з Openpyxl, сьогодні спробуємо розібратися: як змінювати шрифт і колір в осередку?

Почнемо розбиратися – і в практичних цілях створимо Excel-файл, в якому створимо комірку з текстом, який буде:
– Мати певний розмір
– Колір
– Підкреслення
– Нахил
– Текст буде жирним
Починаємо кодувати:

import openpyxl #Подключаем библиотеку
from openpyxl import Workbook
from openpyxl.styles import PatternFill#Подключаем стили для ячеек
from openpyxl.workbook import Workbook
from openpyxl.styles import Font, Fill#Подключаем стили для текста
from openpyxl.styles import colors#Подключаем цвета для текста и ячеек
wb = openpyxl.Workbook() #Создали книгу
work_sheet = wb.create_sheet(title=’Test sheet’) #Создали лист с названием и сделали его активным
 
work_sheet['A1'] = 'Test text'
work_sheet_a1 = work_sheet['A5']#Создали переменную, в которой содержится ячейка A1 с уже имеющимся текстом
work_sheet_a1.font = Font(size=23, underline='single', color='FFBB00', bold=True, italic=True) #Применяем к тексту следующие параметры: размер — 23, подчеркивание, цвет = FFBB00 (цвет текста указывается в RGB), жирный, наклонный. Если нам не нужен жирный шрифт — используем конструкцию: bold=False. Аналогично действуем, если нам не нужен наклонный шрифт: italic=False.
Важно: если есть необходимость — в стилях заложена возможность использования стандартных цветов, но код в этом случае будет выглядеть иначе:
work_sheet_a1.font = Font(size=23, underline='single', color = colors.RED, bold=True, italic=True) #где color = colors.RED — прописанный в стилях цвет
work_sheet_a1.fill = PatternFill(fill_type='solid', start_color='ff8327', end_color='ff8327')#Данный код позволяет делать оформление цветом ячейки

import openpyxl #Подключаем библиотеку
from openpyxl import Workbook
from openpyxl.styles import PatternFill#Подключаем стили для ячеек
from openpyxl.workbook import Workbook
from openpyxl.styles import Font, Fill#Подключаем стили для текста
from openpyxl.styles import colors#Подключаем цвета для текста и ячеек
wb = openpyxl.Workbook() #Создали книгу
work_sheet = wb.create_sheet(title=’Test sheet’) #Создали лист с названием и сделали его активным

work_sheet[‘A1’] = ‘Test text’
work_sheet_a1 = work_sheet[‘A5′]#Создали переменную, в которой содержится ячейка A1 с уже имеющимся текстом
work_sheet_a1.font = Font(size=23, underline=’single’, color=’FFBB00′, bold=True, italic=True) #Применяем к тексту следующие параметры: размер — 23, подчеркивание, цвет = FFBB00 (цвет текста указывается в RGB), жирный, наклонный. Если нам не нужен жирный шрифт — используем конструкцию: bold=False. Аналогично действуем, если нам не нужен наклонный шрифт: italic=False.
Важно: если есть необходимость — в стилях заложена возможность использования стандартных цветов, но код в этом случае будет выглядеть иначе:
work_sheet_a1.font = Font(size=23, underline=’single’, color = colors.RED, bold=True, italic=True) #где color = colors.RED — прописанный в стилях цвет
work_sheet_a1.fill = PatternFill(fill_type=’solid’, start_color=’ff8327′, end_color=’ff8327′)#Данный код позволяет делать оформление цветом ячейки

Важливо: для роботи з оформленням колонок або рядків використовується інший алгоритм, про який ми говоримо пізніше.

Нижче – відео, в якому все наочніше 🙂

До речі, нижче – код простої програми, яка створює сторінку, і записує в комірки текст, розміром від одиниці до вказаного.

import openpyxl #Подключаем библиотеку
from openpyxl.styles import Font, Fill
wb = openpyxl.Workbook() #Создали книгу
work_sheet = wb.create_sheet(title='Test sheet') #Создали лист с названием и сделали его активным
a = int(input('Введите а: '))
cell_a = 'A'
i = 1
while i <= a:
i = str(i)
cell = cell_a + i
work_sheet[cell] = 'Test text'
work_sheet_a1 = work_sheet[cell]
work_sheet_a1.font = Font(size=i)
i = int(i)
i = i + 1
wb.save('ok.xlsx')

Дякую за увагу! По темі, яка звучить як «Openpyxl — як міняти шрифт і колір в осередку» — поки що сказати нічого 🙂 Не забуваємо робити репости 🙂