Как отсортировать данные столбца, щелкнув по заголовку в Excel?
Предположим, у меня есть диапазон данных, и я хочу отсортировать эти данные по возрастанию или убыванию, просто щелкнув по заголовку любого столбца, чтобы получить результат, как на скриншоте ниже. Как можно решить эту задачу в Excel?
Сортировка данных по заголовку столбца с помощью кода VBA
Сортировка данных по заголовку столбца с помощью кода VBA
Обычно в Excel вы можете использовать функцию Сортировки для быстрой и легкой сортировки данных, но чтобы сортировать данные простым щелчком по ячейке, следующий код VBA может помочь.
1. Щелкните правой кнопкой мыши по ярлыку листа, где вы хотите сортировать данные щелчком по ячейке, и выберите Вид кода из контекстного меню. В открывшемся окне Microsoft Visual Basic for Applications скопируйте и вставьте следующий код в пустой Модуль:
Код VBA: Сортировка данных щелчком по ячейке или заголовку столбца:
Public blnToggle As Boolean
Private Sub Worksheet_BeforeDoubleClick _
(ByVal Target As Range, Cancel As Boolean)
'Updateby Extendoffice
Dim LastColumn As Long, keyColumn As Long, LastRow As Long
Dim SortRange As Range
LastColumn = _
Cells.Find(What:="*", After:=Range("A1"), _
SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
keyColumn = Target.Column
If keyColumn > LastColumn Then Exit Sub
Application.ScreenUpdating = False
Cancel = True
LastRow = Cells(Rows.Count, keyColumn).End(xlUp).Row
Set SortRange = Target.CurrentRegion
blnToggle = Not blnToggle
If blnToggle = True Then
SortRange.Sort _
Key1:=Cells(2, keyColumn), Order1:=xlAscending, Header:=xlYes
Else
SortRange.Sort _
Key1:=Cells(2, keyColumn), Order1:=xlDescending, Header:=xlYes
End If
Set SortRange = Nothing
Application.ScreenUpdating = True
End Sub
2. Затем сохраните и закройте окно кода. Теперь, когда вы дважды щелкнете по любой ячейке или заголовку столбца в пределах диапазона данных, столбец будет отсортирован по возрастанию. Если вы снова дважды щелкнете, столбец мгновенно будет отсортирован по убыванию.
Больше связанных статей:
Как изменить значение ячейки, щелкнув по ней?
Как фильтровать данные простым щелчком по содержимому ячейки в Excel?
Лучшие инструменты для повышения продуктивности в Office
Повысьте свои навыки работы в Excel с помощью Kutools для Excel и ощутите эффективность на новом уровне. Kutools для Excel предлагает более300 расширенных функций для повышения производительности и экономии времени. Нажмите здесь, чтобы выбрать функцию, которая вам нужнее всего...
Office Tab добавляет вкладки в Office и делает вашу работу намного проще
- Включите режим вкладок для редактирования и чтения в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна вместо новых отдельных окон.
- Увеличьте свою продуктивность на50% и уменьшите количество щелчков мышью на сотни ежедневно!
Все надстройки Kutools. Один установщик
Пакет Kutools for Office включает надстройки для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro — идеально для команд, работающих в разных приложениях Office.





- Комплексный набор — надстройки для Excel, Word, Outlook и PowerPoint плюс Office Tab Pro
- Один установщик, одна лицензия — настройка занимает считанные минуты (MSI-совместимо)
- Совместная работа — максимальная эффективность между приложениями Office
- 30-дневная полнофункциональная пробная версия — без регистрации и кредитной карты
- Лучшее соотношение цены и качества — экономия по сравнению с покупкой отдельных надстроек