Как да сортирате автоматично датата, когато датата е въведена или променена в Excel?
В Excel, Вид функцията може да ви помогне да сортирате датата във възходящ или низходящ ред според нуждите ви. Но това не е динамично, ако сте сортирали датата и след това сте добавили нова дата към нея, ще трябва да я сортирате отново. Има ли добри и бързи начини за автоматично сортиране на датата, когато въвеждате нова дата всеки път в работен лист?
Автоматично сортиране на дата, когато датата е въведена или променена с формула
Автоматично сортиране на дата, когато датата е въведена или променена с VBA код
Автоматично сортиране на дата, когато датата е въведена или променена с формула
Например, оригиналната дата в колона A, следната формула може да ви помогне да сортирате автоматично датата или други текстови низове в нова помощна колона въз основа на колоната, която искате да сортирате, моля, направете следното:
1. Въведете тази формула:
=INDEX($A$2:$A$15,MATCH(ROWS($A$2:A2),COUNTIF($A$2:$A$15,"<="&$A$2:$A$15),0)) в празна клетка до вашата колона с дати, C2, например, и след това натиснете Ctrl + Shift + Enter клавиши заедно и ще получите числова последователност, след което плъзнете манипулатора за попълване надолу до клетките, които искате да използвате, вижте екранната снимка:
Забележка: В горната формула: A2: A15 е вашият първоначален период от време, който искате да сортирате автоматично.
2. След това форматирайте числата като формат на датата, като щракнете Кратка дата от общ падащ списък под Начало раздел, вижте екранна снимка:
3. След това поредните номера са преобразувани във формат за дата и оригиналната дата също е сортирана, вижте екранната снимка:
4. Отсега нататък, когато въвеждате нова дата или променяте датата в колона A, датата в колона C ще се сортира автоматично във възходящ ред, вижте екранната снимка:
Автоматично сортиране на дата, когато датата е въведена или променена с VBA код
Следният VBA код може да ви помогне да сортирате автоматично датата в оригиналната колона, когато въведете нова дата или промените датата, както е необходимо.
1. Отидете на работния лист, който искате автоматично да сортирате датата, когато въведете или промените дата.
2. Щракнете с десния бутон върху раздела на листа и изберете Преглед на кода от контекстното меню, в изскачащия Microsoft Visual Basic за приложения прозорец, моля, копирайте и поставете следния код в празното поле Модули прозорец, вижте екранна снимка:
VBA код: автоматично сортиране, когато датата е въведена или променена:
Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice
On Error Resume Next
If Application.Intersect(Target, Application.Columns(1)) Is Nothing Then Exit Sub
If Target.Count > 1 Then Exit Sub
Range("A1").Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Sub
Забележка: В горния код въведената дата ще бъде автоматично сортирана в колона A, можете да промените A1 намлява A2 към вашите собствени клетки, колкото ви е необходимо.
3. Отсега нататък, когато въведете дата в колона A, датата ще се сортира автоматично във възходящ ред.
Най-добрите инструменти за продуктивност в офиса
Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време. Щракнете тук, за да получите функцията, от която се нуждаете най-много...
Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна
- Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
- Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!