我需要使用python按给定行排序excel电子表格。对于测试中,我使用这个数据(文件名为xlwings sorting.xlsx):使用xlwings排序(pywin32)
Numbers Letters Letters_2
7 A L
6 B K
5 C M
4 D J
3 E N
2 F I
1 G H
哪些应该归入此:
Numbers Letters Letters_2
1 G H
2 F I
3 E N
4 D J
5 C M
6 B K
7 A L
有人会认为这是一个简单的任务,但在xlwings文档或有关列排序的pywin32文档中,似乎没有任何文档(如果有什么,它埋得太深,以至于两天的阅读没有发现它)。
我可以在网上找到的最接近的东西是this question,它没有答案,只是重定向到一个没有解析的github bug线程。
不过,我设法凑齐根据提问的下面的代码:
import xlwings as xw
from xlwings.constants import SortOrder
bk = xw.Book(r'C:\Users\username\Documents\Test Files\xlwings sorting.xlsx')
sht = bk.sheets['Sheet1']
def xl_col_sort(sht,col_num):
sht.range('a2').api.Sort(sht.ra