python xlwings excel 根据列排序

23 篇文章 0 订阅
7 篇文章 1 订阅
import xlwings as xw
file = 'a.xlsx'
app = xw.App(visible=False, add_book=False)
app.display_alerts = False
app.screen_updating = False
wbk = app.books.open(file)
sheet = wbk.sheets['Sheet 1']

# 以下是根据G列排序,我的表头是在第二行,所以是G2
# Order1说明:1代表升序,2代表降序
sheet.range('G2').api.Sort(Key1=sheet.range('G2').api, Order1=2)

# 或者
# 以下代码内容所在区域是b2到m100,行头是b1:m1。按照c列排序
# 第一行是表头,排列内容就按内容所在行开始
sheet.range('B2:M100').api.Sort(Key1=sheet.range('C2').api, Order1=2)

特别注意,上述是xlwings低版本特有,如果高版本,可能遇到排列出错的情况,改为如下代码

# 就是添加了Orientation=1
sheet.range('G2').api.Sort(Key1=sheet.range('G2').api, Order1=2, Orientation=1)

可以参考VBA的文档
https://docs.microsoft.com/zh-CN/office/vba/api/Excel.Range.Sort

  • 4
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值