Программирование

Автоматизируйте задачи Excel с помощью Openpyxl и Python

Автоматизируйте задачи Excel

В этой статье мы будем работать с таблицами excel с помощью библиотеки openpyxl с python на ноутбуке jupyter.

Мы будем использовать образец файла Excel и выполнять различные задачи для автоматизации этих задач, используя python с помощью библиотеки, упомянутой ниже.

Чтобы установить библиотеку, откройте приглашение anaconda и введите команду, показанную ниже:

pip install openpyxl

Вид образца листа показан ниже с несколькими листами внизу.

Теперь мы загрузим файл Excel с помощью библиотеки.

Импорт библиотеки openpyxl.

import openpyxl

Первый лист внутри рабочей тетради содержит общую информацию о категории, записях и т. д. Два других листа — это чистые листы для тестирования и пробы.

Теперь закройте файл Excel, над которым мы собираемся работать, с помощью интерпретатора Python, чтобы избежать проблем, связанных с разрешениями. Однако не беспокойтесь, всякий раз, когда мы хотим что-то прочитать из файла или когда мы собираемся внести изменения в файл из Python, мы откроем файл и проверим изменения.

Теперь создайте объект переменных, чтобы загрузить в него файл Excel для дальнейших операций.

#In brackets we need to write the path of the workbook
wb = openpyxl.load_workbook("sample_openpyxl.xlsx")

Чтение основной информации книги

wb — это переменная, с которой мы можем выполнять несколько операций. Теперь читаем различную информацию о книге с помощью метода properties.

wb.properties
#output:
<openpyxl.packaging.core.DocumentProperties object>
Parameters:
creator='Amit', title=None, description=None, subject=None, identifier=None, language=None, created=datetime.datetime(2021, 11, 20, 9, 55, 18), modified=datetime.datetime(2021, 11, 20, 10, 1, 16), lastModifiedBy='Amit', category=None, contentStatus=None, version=None, revision=None, keywords=None, lastPrinted=None

В этом выводе мы получаем так много информации, например,

  • Создатель рабочей тетради.
  • Дата создания и дата изменения книги.

Поиск количества имен листов и активных листов в книге

wb.sheetnames
#output:
['sample1', 'sample2', 'Sheet3']

Вывод показывает имя имен листов в нашей книге, как показано на изображении выше.

wb.active
#output:
<Worksheet "sample1">

Создание нового листа и удаление листа из Python

Создание нового листа

wb.create_sheet('new_sheet')
#output:
<Worksheet "new_sheet">

Чтобы внести изменения, нам нужно сохранить книгу.

wb.save(“sample_openpyxl.xlsx”)

Удаление нового или любого листа

Чтобы удалить лист, мы должны указать имя этого конкретного листа.

Опция 1

sheet = wb['new_sheet']
wb.remove(sheet)

Вариант 2

del wb['new_sheet']

Мы можем использовать любой метод из приведенного выше варианта.





Методы работы с листами

Выбираем имя листа, над которым хотим работать.

sheet = wb['sample1']
sheet.title
#output:
'sample1'

Знать все способы выполнения операций с листами с помощью метода dir. Метод dir показывает все методы, с помощью которых мы можем выполнять манипуляции с листом.

dir(sheet)

Примеры:

sheet.active_cell
#output:
F11
sheet.dimensions
#output:
'A1:E13'

Активная ячейка означает, что стрелка мыши нажала на ячейку F11. Общая населенная площадь листа от А1 до Е13.

sheet.max_row
sheet.max_column
#output:
13
5
--------------------------------------------------------
for i in sheet.values:
    print(i)

Поиск значений на листе

Мы можем найти данные ячейки либо по имени ячейки, либо по упоминаниям значений строк и столбцов.

sheet['A4'].value
#output:
'Office Supplies'
--------------------------------------------------------
sheet.cell(row = 3, column = 5).value
#output:
'Home Office'

Изменить значение ячейки

Мы также можем изменить значение данных ячейки, как показано ниже:

cell = sheet['A4']
cell.value = 'Home Supplies'
wb.save("sample_openpyxl.xlsx")

Стили ячеек

Мы работаем в Excel и забываем о стилях ячеек и данных, это невозможно. Здесь мы можем использовать множество стилей, таких как жирный шрифт, курсив, цвет шрифта, цвет заливки ячейки и т. д.

cell = sheet['A5']
font = Font(color = colors.RED, bold = True, italic = True)
cell.font = font
wb.save("sample_openpyxl.xlsx")

Заключение

В этой статье описаны основные методы, используемые в Excel при программировании на Python.

Надеюсь, вам понравилась статья. Свяжитесь со мной на моих LinkedIn и twitter.

Рекомендуемые статьи

1. 8 Active Learning Insights of Python Collection Module
2. NumPy: линейная алгебра изображений
3. Концепции обработки исключений в Python
4. Pandas: работа с Категориальные данные
5. Гиперпараметры: RandomSeachCV и GridSearchCV в машинном обучении
6. Полное объяснение линейной регрессии с Python
7. Полное объяснение логистической регрессии с Python< br /> 8. Распределение данных с помощью Numpy с Python
9. Деревья решений против случайных лесов в машинном обучении
10. Стандартизация в предварительной обработке данных с помощью Python