使用筛选和排序

可以向工作表中添加筛选器。

注解

过滤器和排序只能由OpenPYXL配置,但需要在Excel等应用程序中应用。这是因为它们实际上重新排列或格式化了区域中的单元格或行。

要添加筛选器,请定义一个范围,然后添加列和排序条件:

from openpyxl import Workbook

wb = Workbook()
ws = wb.active

data = [
    ["Fruit", "Quantity"],
    ["Kiwi", 3],
    ["Grape", 15],
    ["Apple", 3],
    ["Peach", 3],
    ["Pomegranate", 3],
    ["Pear", 3],
    ["Tangerine", 3],
    ["Blueberry", 3],
    ["Mango", 3],
    ["Watermelon", 3],
    ["Blackberry", 3],
    ["Orange", 3],
    ["Raspberry", 3],
    ["Banana", 3]
]

for r in data:
    ws.append(r)

ws.auto_filter.ref = "A1:B15"
ws.auto_filter.add_filter_column(0, ["Kiwi", "Apple", "Mango"])
ws.auto_filter.add_sort_condition("B2:B15")

wb.save("filtered.xlsx")

这将向文件添加相关说明,但 既不过滤也不排序 .

“已为一系列单元格准备过滤和排序,但未执行”