Как скопировать форматирование ячеек в Excel с помощью Python
Копирование форматирования ячеек в Excel позволяет копировать стиль, включая шрифт, цвет и выравнивание, из одной ячейки в другую. Эта функция упрощает процесс применения последовательного форматирования на всем рабочем листе, повышая эффективность и поддерживая профессиональный вид электронных таблиц.
В этой статье я расскажу, как скопировать форматирование ячеек в Excel с помощью Python и библиотеки Spire.XLS for Python.
- Копирование форматирования из одной ячейки в другую
- Копирование форматирования из одной ячейки в диапазон ячеек
Установите библиотеку
Это решение требует установки в качестве зависимости Spire.XLS for Python, которая представляет собой библиотеку Python для чтения, создания и работы с документами Excel XLS и XLSX в программах на Python. Вы можете установить ее, выполнив следующую команду pip.
pip install Spire.XLS
Копирование форматирования из одной ячейки в другую
Определенную ячейку в рабочем листе можно получить с помощью свойства Worksheet.Range[row:int, column:int]. Форматирование этой ячейки можно получить через свойство CellRange.Style, а затем применить это форматирование к другой ячейке.
Этот код загружает существующий файл Excel, копирует форматирование из ячеек во втором столбце в соответствующие ячейки в четвертом столбце, а затем сохраняет измененную рабочую книгу в новый файл.
from spire.xls import *
from spire.xls.common import *
# Создание объекта Workbook
workbook = Workbook()
# Загрузка Excel-документа
workbook.LoadFromFile("C:\Users\Administrator\Desktop\Input.xlsx")
# Получение конкретного листа
worksheet = workbook.Worksheets[0]
# Перебор выбранных строк
for i in range(2, 15):
# Получение стиля (форматирования) конкретной ячейки
style = worksheet.Range[i, 2].Style
# Применение стиля к другой ячейке
worksheet.Range[i, 4].Style = style
# Сохранение рабочей книги в файл
workbook.SaveToFile("output/CopyFormatting.xlsx", ExcelVersion.Version2016)
# Освобождение ресурсов
workbook.Dispose()
Копирование форматирования из одной ячейки в диапазон ячеек
Получив стиль (форматирование) конкретной ячейки, вы можете применить этот стиль к диапазону ячеек, доступ к которому можно получить с помощью свойства Worksheet.Range[row:int, column:int, endRow:int, endColumn:int].
Следующий код загружает существующий файл Excel, извлекает стиль (форматирование) определенной ячейки, а затем применяет этот стиль к диапазону ячеек в том же рабочем листе. Наконец, он сохраняет измененную рабочую книгу в новый файл Excel.
from spire.xls import *
from spire.xls.common import *
# Создание объекта Workbook
workbook = Workbook()
# Загрузка Excel-документа
workbook.LoadFromFile("C:\Users\Administrator\Desktop\Input.xlsx")
# Получение конкретного листа
worksheet = workbook.Worksheets[0]
# Получение стиля (форматирования) конкретной ячейки
style = worksheet.Range[3, 1].Style
# Применение стиля к диапазону ячеек
worksheet.Range[3, 4, 4, 6].Style = style
# Сохранение рабочей книги в файл
workbook.SaveToFile("output/ApplyFormatToCellRange.xlsx", ExcelVersion.Version2016)
# Освобождение ресурсов
workbook.Dispose()
Заключение
В этой статье вы узнали, как скопировать форматирование ячеек в Excel на Python с помощью Spire.XLS for Python. Будучи продвинутой библиотекой Python Excel, она позволяет разработчикам выполнять широкий спектр операций с документами Excel, таких как:
Слияние документов Excel в Python