Vba: как сортировать значения по алфавиту
Вы можете использовать следующий базовый синтаксис в VBA для сортировки значений в диапазоне по алфавиту:
Sub SortAlphabetical()
Range(" A1:B11 ").Sort Key1:=Range(" A1 "), Order1:=xlAscending, Header:=xlYes
End Sub
В этом конкретном примере строки в диапазоне A1:B11 сортируются на основе значений в столбце A в алфавитном порядке (от A до Z).
Если вы хотите отсортировать значения в обратном алфавитном порядке (от Z до A), вместо этого вы можете указать Order1:=xlDescending .
Обратите внимание, что Header:=xlYes указывает, что первую строку следует рассматривать как строку заголовка.
В следующем примере показано, как использовать этот синтаксис на практике.
Пример: сортировка значений в алфавитном порядке с использованием VBA
Допустим, у нас есть следующий набор данных в Excel, содержащий информацию о различных баскетболистах:
Допустим, мы хотим отсортировать строки по названию команды в алфавитном порядке.
Для этого мы можем создать следующий макрос:
Sub SortAlphabetical()
Range(" A1:B11 ").Sort Key1:=Range(" A1 "), Order1:=xlAscending, Header:=xlYes
End Sub
Когда мы запускаем этот макрос, мы получаем следующий вывод:
Строки теперь сортируются по названию команды в алфавитном порядке (от А до Я).
Чтобы отсортировать строки в обратном алфавитном порядке (от Z до A), мы можем указать Order1:=xlDescending :
Sub SortAlphabetical()
Range(" A1:B11 ").Sort Key1:=Range(" A1 "), Order1:=xlDescending, Header:=xlYes
End Sub
Когда мы запускаем этот макрос, мы получаем следующий вывод:
Строки теперь отсортированы по названию команды в обратном алфавитном порядке (от Z до A).
Примечание № 1. В этом примере мы сортировали данные по одному столбцу. Однако вы можете указать больше ключей для сортировки по нескольким столбцам.
Примечание №2 . Полную документацию по методу сортировки VBA можно найти здесь .
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в VBA:
VBA: как отсортировать лист по нескольким столбцам
VBA: как подсчитать количество строк в диапазоне
VBA: как фильтровать столбец