Привет всем! В продолжение статей, посвященных работе с 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 — как менять шрифт и цвет в ячейке» — пока сказать больше нечего 🙂 Не забываем делать репосты 🙂