Excel 对特定范围的多个列进行排序
我试图对某个范围内的多个列进行排序。我的工作表有4列(A、B、C、D)和80行。。。然而,我想按D列排序。然而,我只想按降序在第2-20行之间排序。有人能帮我查一下这个密码吗 以下是我的代码:Excel 对特定范围的多个列进行排序,excel,vba,sorting,Excel,Vba,Sorting,我试图对某个范围内的多个列进行排序。我的工作表有4列(A、B、C、D)和80行。。。然而,我想按D列排序。然而,我只想按降序在第2-20行之间排序。有人能帮我查一下这个密码吗 以下是我的代码: Sub Macro1() Range("A2:D20").Select ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key
Sub Macro1()
Range("A2:D20").Select
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("D2:D20") _
, SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Sheet1").Sort
.SetRange Range("A1:D20")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
提前谢谢你。就这样吧:
Range("A2:D20").Sort key1:=Cells(20, 4), order1:=xlDescending, Header:=xlNo
您是否录制了宏以查看Excel使用的代码?我不能这样做,因为每次的范围都会有所不同。这是我录制宏时得到的结果,方法是选择A2:D20,然后按降序对D列排序:。这有什么变化?