xlswriter的'filter_column'能在过滤范围内对列进行排序吗
可以用Python的'xlswriter'模块对.xlsx文件中的一列进行排序吗?下面是一些示例代码:
import xlsxwriter
wb = xlsxwriter.Workbook('test.xlsx')
ws = wb.add_worksheet()
data = (
['Region', 'SalesRep', 'Product', 'Units'],
['East', 'Tom', 'Apple', 6380],
['West', 'Fred', 'Grape', 5619],
['North', 'Amy', 'Pear', 4565],
['South', 'Sal', 'Banana', 5323],
['South', 'Hector', 'Apple', 9814]
)
for row in range(len(data)):
ws.write_row(row,0, data[row])
ws.filter_column(2, <?????>)
1 个回答
0
替代方案
我猜您是想对正在使用的工作簿中的某一列应用过滤器。这个解决方案会添加过滤器,但排序只能在运行时进行,这是微软Excel的一个功能。
from openpyxl import load_workbook
original_file = "data.xlsx"
# Open Excel file with openpyxl
# and loading the workbook
wb = load_workbook(original_file)
worksheet = wb.active
# Adjust range based on your data
worksheet.auto_filter.ref = "A1:A6"
# Saving the modified workbook
wb.save("data_with_filter.xlsx")
为了方便您:
pip install openpyxl