Как удалить страницу в Excel-файле с помощью Python

Привет всем!
В прошлой записи мы рассматривали вариант создания страницы с помощью Python-библиотеки Openpyxl в Excel-файле. Собственно — кому интересно — материал доступен по ссылке. Но иногда (не часто) возникает необходимость действия, которое звучит как: Как удалить страницу в Excel-файле с помощью Python?

Представим себе ситуацию — имеется некий excel-файл, в котором нужно удалить лист.
Так давайте удалим:

import openpyxl #Подключаем библиотеку для работы с Excel
wb = openpyxl.load_workbook(‘testfile.xlsx’) #Открываем Excel-файл
sheet = wb.sheetnames #Получили список всех листов в файле и загнали его в переменную
print(sheet) #Вывели на экран список всех листов в файле
pfd = wb[‘1’] #Сделали активной страницу, которую хотим удалить, где [1] — название страницы. Понятно, что можно сделать ее переменной 😉
wb.remove(pfd)#Удаляем эту страницу
wb.save(‘testdel.xlsx’) #Сохранили файл с изменениями (удаленная страница)

import openpyxl #Подключаем библиотеку для работы с Excel
wb = openpyxl.load_workbook('testfile.xlsx') #Открываем Excel-файл
sheet = wb.sheetnames #Получили список всех листов в файле и загнали его в переменную
print(sheet) #Вывели на экран список всех листов в файле
pfd = wb['1'] #Сделали активной страницу, которую хотим удалить, где [1] - название страницы. Понятно, что можно сделать ее переменной ;)
wb.remove(pfd) #Удаляем эту страницу
wb.save('testdel.xlsx') #Сохранили файл с изменениями (удаленная страница)

Фактически, как видно из кода выше — самым важным является связка:
pfd = wb[‘1’]#делаем страницу активной
wb.remove(pfd)#и тут же удаляем ее

В самое ближайшее время мы узнаем как записывать что-либо в ячейки Excel с помощью Python.
И конечно же — не стесняйтесь задавать вопросы.

UPD: для очистки листа целиком можно использовать метод:
wb.worksheets[sht].clear() (за дополнение спасибо одному из читателей блога 🙂

Support the Blog!

Running a blog takes a lot of effort, time, and passion. Your donations help improve the content, inspire new ideas, and keep the project going.
If you’ve enjoyed the blog’s materials, any support would mean the world to me. Thank you for being here! ❤️

PayPal Logo Donate via PayPal

Revolut Logo Donate via Revolut