У меня есть рабочая тетрадь для еженедельных отчетов, однако мы ежедневно добавляем новые записи.

Теперь я хочу знать, как настроить автоматическую сортировку по двум конкретным столбцам при каждом открытии книги.

Ниже приведены столбцы, которые я хочу использовать:

  • Конец текущего рабочего года от старого к новому (столбец D, данные начинаются в строке 6).

  • Рабочий статус от Z до A (столбец J, данные начинаются в строке 6).

введите описание изображения здесь

1 ответ1

-1

Чтобы установить автоматическую сортировку по столбцам желаний при открытии рабочей книги, необходим этот макрос (VBA).

Private Sub Worksheet_Open()

Columns("D:D").Select
    Selection.Sort Key1:=Range("D6"), Order1:=xlDescending, Header:=xlYes, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal

    Columns("J:J").Select
    Selection.Sort Key2:=Range("J6"), Order1:=xlDescending, Header:=xlYes, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal

End Sub

Как это устроено:

  1. Нажмите Alt+F11 чтобы открыть редактор VB.
  2. Вверху слева в Project Explorer windows найдите ThisWorkbook .
  3. Double click нему, затем Copy & Paste этот код.
  4. Save и Close книгу.

Замечания:

Теперь каждый раз, когда вы открываете Workbook Excel, этот код запускается для сортировки данных по указанным столбцам.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .