Страницы: 1
RSS
Сортировка на выбранном диапазоне ячеек
 
День добрый.

пытаюсь сделать сортировку на выбранном диапазоне ячеек  от второй строки первой ячейки до 9 столбца не известной ячейки  (каждый раз может быть разная)


lLastRow- номер последней ячейки
и не знаю как дальше выбрать участок
от А2 до Н lLastRow

что бы сортировку применить на этом диапазоне ячеек
Код
 lLastRow = Cells.SpecialCells(xlLastCell).Row
    
   Range("A3", Rows.Count).Select
     'Set ra = sh.Range(sh.Range("a11"), sh.Range("a" & sh.Rows.Count).End(xlUp)).Resize(, 10)
    'Selection.ra
    'ni?oe?iaea
 '   Range("A3:H4107").Select
    ActiveWorkbook.Worksheets("Pivot Table").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Pivot Table").Sort.SortFields.Add Key:=Range( _
        "B3:Rows.Count"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortNormal
    ActiveWorkbook.Worksheets("Pivot Table").Sort.SortFields.Add Key:=Range( _
        "A3:Rows.Count"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortNormal
    ActiveWorkbook.Worksheets("Pivot Table").Sort.SortFields.Add Key:=Range( _
        "H3:Rows.Count"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.Worksheets("Pivot Table").Sort
        .SetRange Range("A3", Rows.Count).Select
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
 
Kyvaldenius,  попробуйте так:
Код
Sub applySort()
Dim srcRn As Range
    If Cells.SpecialCells(xlLastCell).Row >= 3 Then
       Set srcRn = Range([A3], Cells.SpecialCells(xlLastCell))
        With srcRn.Parent.Sort
            .SortFields.Clear
            ' Колонка B
            .SortFields.Add Key:=srcRn.Columns(2)
            ' Колонка A
            .SortFields.Add Key:=srcRn.Columns(1)
            ' Колонка H
            .SortFields.Add Key:=srcRn.Columns(8)
            .SetRange srcRn
            .Header = xlYes
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
        End With
    End If
End Sub
In GoTo we trust
 
Да огромное спасибо все работает !!!
Страницы: 1
Наверх