Привіт всім! Продовжуючи статті, присвячені роботі з 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 — як міняти шрифт і колір в осередку» — поки що сказати нічого 🙂 Не забуваємо робити репости 🙂