使用键列表对两个范围进行排序

问题描述 投票:0回答:1

我需要对两个范围“I”和“K”进行排序。我的下一列是 J 代表 I,L 代表 K,其中的公式可在 I 和 K 范围的条目上生成 1-6,因此我需要对这些数字进行排序。这是我的代码,它表示由于某种原因该范围没有任何意义。

    Sub SortDataIK()
    
        Dim ws As Worksheet
        Dim lastRowI As Long
        Dim lastRowk As Long
        Dim sortRangeI As Range
        Dim sortRangek As Range
        
        Set ws = ThisWorkbook.Worksheets("Data")
        
        lastRowI = ws.Cells(ws.Rows.Count, "I").End(xlUp).row
        lastRowk = ws.Cells(ws.Rows.Count, "K").End(xlUp).row
         
        Set sortRangeI = ws.Range("I1:J" & lastRow)
        sortRange.Sort Key1:=ws.Range("J1"), Order1:=xlAscending, Header:=xlNo
        
        Set sortRangek = ws.Range("K1:L" & lastRow)
        sortRange.Sort Key1:=ws.Range("L1"), Order1:=xlAscending, Header:=xlNo


    End Sub
excel vba sorting range
1个回答
0
投票

错误在行中

        Set sortRangeI = ws.Range("I1:J" & lastRow)
        Set sortRangek = ws.Range("K1:L" & lastRow)

没有给

lastrow
赋值,它给出0。显然,它应该是

        Set sortRangeI = ws.Range("I1:J" & lastRowI)
        Set sortRangek = ws.Range("K1:L" & lastRowk)
© www.soinside.com 2019 - 2024. All rights reserved.