Макрос для повторного применения фильтра в Excel 2016


0

У меня Mac и я запускаю Excel 2016. У меня есть лист Excel, который автоматически фильтруется по дате.

До недавнего времени у меня сохранялся макрос, который позволял мне нажимать Ctrl + Option + n, и он повторно применял фильтр без необходимости переходить домой -> Сортировать и фильтровать -> Повторно применить фильтр .

По некоторым причинам последние обновления Office удалили макрос, и я не могу найти его снова.

Я попытался записи макроса, но когда я запускаю его, он говорит: Runtime Error 1004.

Сам макрос выглядит следующим образом:

Sub Macro1()
'
' Macro1 Macro
'
' Keyboard Shortcut: Option+Cmd+n
'
    ExecuteExcel4Macro "()"
    With ActiveWorkbook.Worksheets("Leads").AutoFilter.Sort
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub

Может кто-нибудь сказать мне, как заставить это работать? Я почти постоянно обновляю лист, поэтому наличие ярлыка для обновления фильтров сделало мою жизнь намного проще!

Ответы:


1

Это работает для меня:

Sub ReapplyFilter()
  ActiveSheet.AutoFilter.ApplyFilter
End Sub

Надеюсь, это поможет.


1
Когда я пытаюсь это сделать, подскажите мне переменную объекта или переменная блока не установлена, ошибка времени выполнения!
тубероза

0

Я была такая же проблема. Оказалось, я пытался повторно применить фильтр на листе, на котором его не было. Вот код, который работал:

    If Not (ws.AutoFilter Is Nothing) Then
        Debug.Print "Reapplying autofilter for " & ws.Name
        ws.AutoFilter.ApplyFilter
    End If
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.