Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1042|回复: 2

[已解决]排序代码求助

[复制链接]
发表于 2022-6-15 13:20 | 显示全部楼层 |阅读模式
我需要对D列的数据由大到小进行排序,但不知为何会把数量较小的删了
Sub 排序()
On Error Resume Next
    Dim arr, ar, temp, x, y
    ar = Sheet1.Range("b65536").End(xlUp).Row
With Sheet1
    For x = 3 To ar
     arr = .Range(Cells(x, 2), Cells(x, 11))
      For y = x - 1 To 1 Step -1
       If .Cells(y, 4) >= .Cells(x, 4) Then Exit For
           .Range(Cells(y + 1, 2), Cells(y + 1, 11)) = .Range(Cells(y, 2), Cells(y, 11))
    Next y
         .Range(Cells(y + 1, 2), Cells(y + 1, 11)) = arr
    Next x
End With
End Sub


排序求助.zip (16.64 KB, 下载次数: 7)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2022-6-15 14:39 | 显示全部楼层    本楼为最佳答案   
本帖最后由 sam-wang 于 2022-6-15 14:41 编辑

按D列数据由大到小进行排序
>>請測試看看,謝謝

Sub test()
With Range([A1], [I65536].End(3))
      .Sort Key1:=.Item(4), Order1:=2, Header:=1
End With
End Sub

回复

使用道具 举报

 楼主| 发表于 2022-6-16 11:29 | 显示全部楼层
sam-wang 发表于 2022-6-15 14:39
按D列数据由大到小进行排序
>>請測試看看,謝謝

十分感谢,涨知识了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-25 08:44 , Processed in 0.357435 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表