Сортировка метода Range Class Failed - 2 ключа VBA - PullRequest
0 голосов
/ 28 февраля 2020

Я пытаюсь отсортировать данные по неизвестному диапазону. Когда я пытаюсь выполнить сортировку по двум ключам, у меня не получается метод сортировки по диапазонному классу

Option Explicit

Sub PostReview()

Dim tWb As ThisWorkbook, ws As Worksheet
Dim Lastrow As Integer, LastCol As Integer
Dim I As Integer, j As Integer
Dim rng As Range, rng2 As Range

Set ws = Worksheets("TR Query")

'Sort by Portfolio & Audit Date
Worksheets("TR Query").Activate
Lastrow = Cells(Rows.Count, 2).End(xlUp).Row

With ws
 .Range("B1:B" & Lastrow).Copy
 .Range("N:N").PasteSpecial (xlPasteValues)
    Application.CutCopyMode = False

    Set rng = Worksheets("TR Query").Range("N2:N" & Lastrow)
        rng.Value = rng.Value

    LastCol = Cells(1, Columns.Count).End(xlToLeft).Column

    Set rng2 = .Range(.Cells(Lastrow, 1), .Cells(Lastrow, LastCol))

        With rng2
            .Cells.Sort Key1:=.Range("N1"), Order1:=xlAscending, _
                        Key2:=.Range("L1"), Order2:=xlDescending, _
                        Orientation:=xlTopToBottom, Header:=xlYes
        End With
End With

Я надеюсь, что данные сортируются сначала по столбцу N от A до Z, а затем сортируются по столбцу L из самого нового на самый старый.

ошибка в моем коде здесь:

With rng2
    .Cells.Sort Key1:=.Range("N1"), Order1:=xlAscending, _ 'error happens here
                Key2:=.Range("L1"), Order2:=xlDescending, _
                Orientation:=xlTopToBottom, Header:=xlYes
End With

я не уверен, что я делаю неправильно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...