Самоучитель VBA

         

Метод Sort Сортировка позволяет



Метод Sort

Сортировка позволяет выстраивать данные в лексикографическом порядке по возрастанию или убыванию. Метод Sort осуществляет сортировку строк списков и баз данных, а также столбцов рабочих листов с учетом до трех критериев, по которым производится сортировка. Сортировка данных вручную совершается с использованием команды Данные, Сортировка (Data, Sort). .


Синтаксис:


Объект.Sort(keyl, orderl, key2, order2, key3, order3, header, orderCus-tom,
matchCase, orientation)

Аргументы:



Объект


Диапазон, который будет сортироваться

keyl

Ссылка на первое упорядочиваемое поле

orderl

Задает порядок упорядочивания. Допустимые значения:

  • xlAscending (возрастающий порядок)
  • xlDescending (убывающий порядок)

key2

Ссылка на второе упорядочиваемое поле

order2

Задает порядок упорядочивания. Допустимые значения:

  • xlAscending (возрастающий порядок)
  • xlDescending (убывающий порядок)

key3

Ссылка на второе упорядочиваемое поле

order3

Задает порядок упорядочивания. Допустимые значения:

  • xlAscending (возрастающий порядок),
  • xlDescending (убывающий Порядок)

header

Допустимые значения:

  • xlYes (первая строка диапазона содержит заголовок, который не сортируется)
  • xiNo (первая строка диапазона не содержит заголовок, по умолчанию считается данное значение)
  • xlGuess (Excel решает, имеется ли заголовок)

orderCustom

Пользовательский порядок сортировки. По умолчанию

используется Normal

matchCase

Допустимые значения: True (учитываются регистры) и False (регистры не учитываются)

orientation

Допустимые значения: О xlTopToBottom (сортировка осуществляется сверху вниз, т. е. по строкам), П xlLeftToRight (слева направо, т. е. по столбцам)

Например, диапазон А1:С20 рабочего листа лист! сортируется следующей командой в порядке возрастания так, что первоначальная сортировка происходит по первому столбцу этого диапазона, а второстепенная — по второму.

Worksheets("Лист").Range("Al:C20").Sort keyl:=Worksheets("Sheetl").Range("Al"), key2:=Worksheets("Sheetl").Range("Bl")

Приведем соответствие между аргументами метода Sort и сортировкой данных на рабочем листе вручную при помощи команды Данные, Сортировка (Data, Sort).

Шаг 1

Выделяем диапазон A1:G13, содержащий записи базы данных о туристах, которые должны быть отсортированы (Рисунок 3.17). В методе Sort за диапазон с записями, подлежащими сортировке, отвечает объект, к которому применяется метод. В данном случае метод sort надо применить к диапазону Range ("A1 :G13") .



Содержание раздела