如何在一张纸上获得多个过滤器?
单个过滤器很简单:
worksheet.auto_filter.ref = "A1:D4"
我无法弄清楚如何做多个过滤器。我试过了几件事:
worksheet.auto_filter.ref = "A1:D4,A6:D9"
worksheet.auto_filter.ref = "A1:D4;A6:D9"
但注意到了。
谢谢, 莱恩
答案 0 :(得分:1)
规范说每个工作表可能只有一个自动过滤器。
只要您对使用开发版本感到满意,您可能需要查看2.4开发分支,该分支具有更多改进的过滤和排序支持。我自己不使用过滤器,因此可以使用一些测试,反馈非常有用。
API已经改变了一些,最好的文档在测试中:
af = AutoFilter('A1:F1')
af.add_filter_column(5, ["0"], blank=True)
ws.auto_filter = af
答案 1 :(得分:1)
发现我可以使用表来实现排序/过滤功能。并且您可以在一张表中包含多个表。不幸的是,我无法在openpyxl中找到一种方法,但XlsxWriter可以很容易地做到这一点。
worksheet1.add_table('A1:C4')
worksheet1.add_table('F8:H15')