Как автоматически отсортировать столбец по значению в Excel?
Например, у вас есть таблица покупок, как показано на скриншоте ниже. Теперь вы хотите, чтобы столбец «Цена» сортировался автоматически при вводе новых чисел/цен в этот столбец. Как можно решить эту задачу? Здесь я представлю макрос VBA, который поможет вам автоматически отсортировать определенный столбец по значению в Excel.
Автоматическая сортировка столбца по значению с помощью VBA

Автоматическая сортировка столбца по значению с помощью VBA
Этот макрос VBA будет автоматически сортировать все данные в определенном столбце сразу после того, как вы введете новые данные или измените значение в этом столбце в Excel.
1. Щелкните правой кнопкой мыши имя текущего листа на панели "Листы", затем выберите "Просмотр кода" из контекстного меню.

2. В открывшемся диалоговом окне "Microsoft Visual Basic for Applications" вставьте следующий код макроса VBA в открывшееся окно.

VBA: Автоматическая сортировка столбца в Excel
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("B:B")) Is Nothing Then
Range("B1").Sort Key1:=Range("B2"), _
Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, _
Orientation:=xlTopToBottom
End If
End SubПримечание:
1) В приведенном выше коде VBA "B:B" означает, что он будет автоматически сортировать столбец B, B1 — это первая ячейка в столбце B, а "B2" — вторая ячейка в столбце B, и вы можете изменить их в зависимости от ваших потребностей.
2) Фрагмент "Header:=xlYes" в 5-й строке сообщает Excel, что диапазон, который вы собираетесь сортировать, имеет заголовок, поэтому первая строка диапазона не будет включаться при сортировке. Если заголовка нет, измените его на "Header:=xlNo"; и измените "Key1:=Range("B2")" в 4-й строке на "Key1:=Range("B1")".
3. Затем вернитесь к рабочему листу, когда вы вводите новое число в столбце «Цена» или изменяете любые существующие цены, столбец «Цена» будет автоматически отсортирован по возрастанию.

Примечание: Когда вы вводите новое число в столбец «Цена», вы должны ввести число в первую пустую ячейку под исходными числами. Если между новым введенным числом и исходными числами есть пустые ячейки, а также пустые ячейки между исходными числами, этот столбец не будет автоматически отсортирован.
Демонстрация: Автоматическая сортировка столбца по значению с помощью VBA в Excel
Легкая сортировка по частоте повторений в Excel
Функция "Расширенная сортировка" Kutools для Excel позволяет легко сортировать данные по различным критериям, таким как длина текста, фамилия, абсолютное значение, частота и многое другое.

Kutools для Excel - Усильте Excel более чем 300 необходимыми инструментами. Наслаждайтесь постоянно бесплатными функциями ИИ! Получите прямо сейчас
Лучшие инструменты для повышения продуктивности в Office
Повысьте свои навыки работы в Excel с Kutools для Excel и ощутите новую эффективность. Kutools для Excel предлагает более300 расширенных функций для повышения продуктивности и экономии времени. Щелкните здесь, чтобы получить наиболее нужную вам функцию...
Office Tab добавляет вкладочный интерфейс в Office, делая вашу работу значительно проще
- Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна, а не в новых окнах.
- Увеличьте свою продуктивность на50% и сократите сотни кликов мышью ежедневно!