Я хочу сортировать столбец (это флагшток с Y/N). Он должен переключаться между восходящим/нисходящим при каждом нажатии.сортировать по возрастанию/по убыванию vba excel
мой код не работает. Я новичок в VBA. Любая помощь пожалуйста.
Private Sub CommandButton1_Click()
Dim xlSort As XlSortOrder
Dim LastRow As Long
With ActiveSheet
LastRow = .Cells(.Rows.Count, "E").End(xlUp).Row End With
If (Range("E2").Value > Range("E" & CStr(LastRow))) Then
xlSort = xlAscending
Else
xlSort = xlDescending
End If
.Sort Key1:=Range("E2"), Order1:=xlSort, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
ActiveWorkbook.Save
End Sub
Вы пропускаете 'Конец With' поместите его перед' ActiveWorkbook.Save' –
Я добавил окончили. Теперь он показывает, что объект не поддерживает это свойство или ошибку времени выполнения метода - 438, пожалуйста, совет – user1987752
Теперь у вас есть 2 'End With's - удалить строку на строке' LastRow = 'и везде, где вы видите слово« Range », заменить это с '.Range' –