我正在使用来自Here的 Python 解决方案将 XLSX 文件转换为 XLS,但这会忽略我已经隐藏的行。有没有办法让它只复制我的源 Xlsx 文件中可见的行?
这是我的代码:
import pyexcel as p
p.save_book_as(file_name='Source.xlsx', dest_file_name='Destination.xls')
简答
请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
解释/长答案
pyexcel-xls(xlrd)不支持 xlsx 格式但 xls 的隐藏行。这就是为什么注释 1 要求 pyexcel 使用 pyexcel-xlsx 来读取 xlsx 文件。
这个标志在pyexcel-xlsx README中注明,True
意思是忽略隐藏的行。
为什么library
?它特定于save_as
、save_book_as
和。在这些功能中,需要一个阅读器和一个作者来完成该功能。告诉 pyexcel 使用特定的库来读取文件,而告诉 pyexcel 写入文件。isave_as
isave_book_as
library
dest_library
这些已记录在案,例如save_as并请在页面中查找库。