Hur sorterar jag automatiskt datum när datum anges eller ändras i Excel?
I Excel är Svart funktionen kan hjälpa dig att sortera datum i stigande eller fallande ordning efter behov. Men det är inte dynamiskt, om du har sorterat datumet och sedan lagt till ett nytt datum i det, måste du sortera det igen. Finns det några bra och snabba sätt för dig att automatiskt sortera datumet när du anger ett nytt datum varje gång i ett kalkylblad?
Automatiskt sortera datum när datum anges eller ändras med formel
Automatiskt sortera datum när datum anges eller ändras med VBA-kod
Automatiskt sortera datum när datum anges eller ändras med formel
Till exempel, det ursprungliga datumet i kolumn A, följande formel kan hjälpa dig att automatiskt sortera datumet eller andra textsträngar i en ny hjälpkolumn baserat på kolumnen du vill sortera, gör så här:
1. Ange denna formel:
=INDEX($A$2:$A$15,MATCH(ROWS($A$2:A2),COUNTIF($A$2:$A$15,"<="&$A$2:$A$15),0)) i en tom cell bredvid din datumkolumn, C2, till exempel, och tryck sedan på Ctrl + Skift + Enter tangenter tillsammans, så får du en nummersekvens och drar sedan påfyllningshandtaget ner till cellerna som du vill använda, se skärmdump:
Anmärkningar: I ovanstående formel: A2: A15 är ditt ursprungliga datumintervall som du vill sortera automatiskt.
2. Formatera sedan siffrorna som datumformat genom att klicka på Kort datum från Allmänt rullgardinsmenyn under Hem flik, se skärmdump:
3. Sedan har sekvensnumren konverterats till datumformat och originaldatumet har också sorterats, se skärmdump:
4. Från och med nu, när du anger nytt datum eller ändrar datum i kolumn A, kommer datumet i kolumn C automatiskt att sorteras i stigande ordning, se skärmdump:
Automatiskt sortera datum när datum anges eller ändras med VBA-kod
Följande VBA-kod kan hjälpa dig att automatiskt sortera datumet i den ursprungliga kolumnen när du anger nytt datum eller ändrar datumet efter behov.
1. Gå till kalkylbladet som du vill sortera datumet automatiskt när du anger eller ändrar ett datum.
2. Högerklicka på arkfliken och välj Visa kod från snabbmenyn, i poppade ut Microsoft Visual Basic för applikationer kopiera och klistra in följande kod i tomt Modulerna fönster, se skärmdump:
VBA-kod: automatisk sortering när datum anges eller ändras:
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
Anmärkningar: I ovanstående kod kommer det inmatade datumet att sorteras automatiskt i kolumn A, du kan ändra A1 och A2 till dina egna celler som du behöver.
3. Från och med nu, när du anger datum i kolumn A, sorteras datumet stigande automatiskt.
Bästa kontorsproduktivitetsverktyg
Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid. Klicka här för att få den funktion du behöver mest...
Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare
- Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
- Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
- Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!