Использование VBA для сортировки выделенных ячеек - PullRequest
0 голосов
/ 19 июня 2019

Я пытаюсь отсортировать ячейки по тому, выделены они или нет. Если они есть, я ищу эти ряды, чтобы быть наверху.

Попробовал код из другого вопроса, но не могу понять.

'sort highlighted and alphabetical
Sub SortColor()

    Dim rngFirstRow As Range
    Dim rng As Range, rngSort As Range
    Dim ws As Worksheet

    Application.ScreenUpdating = False
    Set ws = Sheets("modified_report")
    Set rngFirstRow = ws.Range("K2:M2")
    For Each rng In rngFirstRow.Cells
        With ws.Sort

            Set rngSort = rng.Resize(150, 1)

            .SortFields.Clear
            .SortFields.Add(rng, xlSortOnCellColor, xlDescending, , xlSortNormal). _
                            SortOnValue.Color = RGB(198, 239, 206)
            .SetRange rngSort
            .Header = xlNo
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply

        End With
    Next rng
    Application.ScreenUpdating = True
End Sub

Если в столбцах K: M есть подсвеченные ячейки, я был в этой строке вверху.

Я не могу заставить весь ряд переместиться наверх. Этот код, кажется, просто перемещает эти ячейки и поэтому мешает остальной части строки.

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