Конвертировать XLSX в XLS и сохранить скрытые строки

Я использую здесь решение Python для преобразования файла XLSX в XLS, однако при этом игнорируются строки, которые я уже скрыл. Есть ли способ, чтобы это только скопировать строки, которые видны в моем исходном файле Xlsx?

Вот мой код:

import pyexcel as p
p.save_book_as(file_name='Source.xlsx', dest_file_name='Destination.xls')

1 ответ

Короткий ответ

Пожалуйста, используйте skip_hidden_row_and_column=True как в тестовом коде pyexcel-xlsx:

p.save_book_as(file_name='Source.xlsx', 
               library='pyexcel-xlsx',  # <--- note 1
               skip_hidden_row_and_column=True,  # <--- note 2
               dest_file_name='Destination.xls')

Получить pyexcel-xlsx, ты можешь использовать pip:

pip install pyexcel-xlsx

Объяснение / длинный ответ

  1. pyexcel-xls (xlrd) не поддерживает скрытые строки для формата xlsx, но xls. Вот почему примечание 1 просит pyexcel использовать pyexcel-xlsx для чтения файла xlsx.

  2. И этот флаг был отмечен в pyexcel-xlsx README, True означает игнорировать скрытые строки.

Зачем library? Это специфично для save_as, save_book_as, isave_as а также isave_book_as, В этих функциях для завершения функции были задействованы читатель и писатель. library говорит pyexcel использовать определенную библиотеку для чтения файла, тогда как dest_library говорит pyexcel написать файл.

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

Другие вопросы по тегам