openpyxl使用过滤数据读取excel

时间:2017-01-24 09:16:25

标签: python excel openpyxl

使用openpyxl,我正在读取已经应用了一些过滤器的excel文件。

from openpyxl import load_workbook
wb = load_workbook('C:\Users\dsivaji\Downloads\testcases.xlsx')
ws = wb['TestCaseList']
print ws['B3'].value

我的目标是遍历“B”列的内容。有了这个,我将能够读取单元格'B3'的内容。如果应用过滤器,在这种情况下,我不想从初始单元格开始。

即。在excel中可见的任何一个(在应用过滤器之后),我想要获取的那些。

在网上搜索了一段时间后,发现ws.row_dimensions可以帮助visible属性,但仍然没有运气。

>>> ws.row_dimensions[1]
<openpyxl.worksheet.dimensions.RowDimension object at 0x03EF5B48>
>>> ws.row_dimensions[2]
<openpyxl.worksheet.dimensions.RowDimension object at 0x03EF5B70>
>>> ws.row_dimensions[3].visible
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'RowDimension' object has no attribute 'visible'

如何实现这一目标?

2 个答案:

答案 0 :(得分:1)

你快到了。属性的名称为hidden。如果您将代码中的visible替换为hidden,则应该有效。

答案 1 :(得分:0)

openpyxl是OOXML文件格式(.xlsx)的库,而不是Microsoft Excel等应用程序的替代品。因为过滤器的这种支持仅限于阅读和编写它们的定义,而不是应用它们。