Страницы: 1
RSS
error '1004' при добавлении макроса в Worksheet_Activate
 
Добрый день. Прошу помощи с неясным для меня вопросом.

Пытаюсь разобраться с активацией макроса по активации листа ("Worksheet_Activate()")

Задача макроса: при активации листа (Лист1) требуется выполнение сортировки данных в таблице на другом листе (Таблица2 на Служебный).
Запись макроса выдала такой код:
Код
    Worksheets("Служебный").ListObjects("Таблица2").Sort.SortFields.Clear
    Worksheets("Служебный").ListObjects("Таблица2").Sort.SortFields.Add Key:=Range("Таблица2[[#All],[Год]]"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Служебный").ListObjects("Таблица2").Sort
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With

Если этот макрос запускать с кнопки - все отлично. Но когда пытаюсь добавить его к коду листа (через ПКМ на названии листа и "показать код"), то получаю Run-time error '1004': Method 'Range' of object '_Worksheet' failed.

Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

End Sub

Private Sub Worksheet_Activate()
    Worksheets("Служебный").ListObjects("Таблица2").Sort.SortFields.Clear
    Worksheets("Служебный").ListObjects("Таблица2").Sort.SortFields.Add Key:=Range("Таблица2[[#All],[Год]]"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Служебный").ListObjects("Таблица2").Sort
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub

Прошу ткнуть носом в ошибку.

Изменено: Владимиров Дмитрий - 18.08.2022 15:35:38
 
Владимиров Дмитрий, здравствуйте
Попробуйте так. Для Range нужно было тоже лист указать
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Jack Famous, благодарю! Все работает
 
Toheno, пожалуйста. Тут подробности, если интересно…
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Страницы: 1
Наверх