Hoe datums automatisch te sorteren bij invoer of wijziging in Excel?
In Excel kan de functie Sorteren u helpen om datums in oplopende of aflopende volgorde te sorteren zoals u nodig hebt. Maar het is niet dynamisch; als u de datums heeft gesorteerd en vervolgens nieuwe datums toevoegt, moet u ze opnieuw sorteren. Zijn er goede en snelle manieren om datums automatisch te sorteren wanneer u elke keer nieuwe gegevens invoert in een werkblad?
Datum automatisch sorteren wanneer een datum wordt ingevoerd of gewijzigd met een formule
Datum automatisch sorteren wanneer een datum wordt ingevoerd of gewijzigd met VBA-code
Datum automatisch sorteren wanneer een datum wordt ingevoerd of gewijzigd met een formule
Als de oorspronkelijke datums bijvoorbeeld in kolom A staan, kan de volgende formule u helpen om de datums of andere tekstreeksen automatisch te sorteren in een nieuwe hulpkolom, gebaseerd op de kolom die u wilt sorteren. Volg deze stappen:
1. Voer deze formule in:
=INDEX($A$2:$A$15;MATCH(RIJEN($A$2:A2);AANTAL.ALS($A$2:$A$15,"<="&$A$2:$A$15);0)) in een lege cel naast uw datumkolom, bijvoorbeeld C2, en druk vervolgens tegelijk op Ctrl + Shift + Enter om een getallenreeks te krijgen. Sleep vervolgens de vulgreep naar beneden naar de gewenste cellen. Zie screenshot:
Opmerking: In bovenstaande formule: A2:A15 is uw oorspronkelijke datumreeks die u automatisch wilt sorteren.
2. Formatteer vervolgens de getallen als datumformaat door Korte datum te selecteren uit de vervolgkeuzelijst Algemeen onder het tabblad Start, zie screenshot:
3. De reeksnummers zijn nu geconverteerd naar datumformaat, en de oorspronkelijke datums zijn ook gesorteerd. Zie screenshot:
4. Vanaf nu, wanneer u een datum invoert of wijzigt in kolom A, worden de datums in kolom C automatisch in oplopende volgorde gesorteerd. Zie screenshot:
Datum automatisch sorteren wanneer een datum wordt ingevoerd of gewijzigd met VBA-code
De volgende VBA-code kan u helpen om datums automatisch te sorteren in de oorspronkelijke kolom wanneer u een datum invoert of wijzigt indien nodig.
1. Ga naar het werkblad waarin u de datums automatisch wilt sorteren wanneer u een datum invoert of wijzigt.
2. Klik met de rechtermuisknop op het bladtabblad en selecteer Weergave Code in het contextmenu. Kopieer en plak in het venster Microsoft Visual Basic for Applications de volgende code in het lege modulevenster, zie screenshot:
VBA-code: automatisch sorteren wanneer een datum wordt ingevoerd of gewijzigd:
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
Opmerking: In bovenstaande code worden de ingevoerde datums automatisch gesorteerd in kolom A. U kunt A1 en A2 naar uw eigen cellen wijzigen zoals u nodig hebt.
3. Vanaf nu, wanneer u een datum invoert in kolom A, worden de datums automatisch in oplopende volgorde gesorteerd.
Beste Office-productiviteitstools
Versterk je Excel-vaardigheden met Kutools voor Excel en ervaar ongeëvenaarde efficiëntie. Kutools voor Excel biedt meer dan300 geavanceerde functies om je productiviteit te verhogen en tijd te besparen. Klik hier om de functie te krijgen die je het meest nodig hebt...
Office Tab brengt een tabbladinterface naar Office en maakt je werk veel eenvoudiger
- Schakel bewerken en lezen met tabbladen in Word, Excel, PowerPoint in
- Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster, in plaats van in nieuwe vensters.
- Verhoog je productiviteit met50% en bespaar dagelijks honderden muisklikken!