Sådan sorteres efter dato i Excel: kronologisk, efter måned, automatisk sortering

  • Del Dette
Michael Brown

I denne artikel vil vi se på forskellige måder at sortere datoer på i Excel. Du lærer, hvordan du hurtigt kan ordne datoer i kronologisk rækkefølge, sortere efter måned uden år, sortere fødselsdage efter måned og dag, og hvordan du automatisk sorterer efter dato, når du indtaster nye værdier.

Excels indbyggede sorteringsmuligheder er kraftfulde og effektive værktøjer, men de fungerer ikke altid korrekt, når det gælder sortering af datoer. Denne vejledning vil lære dig et par nyttige tricks til at sortere Excel efter datoer på en meningsfuld måde uden at ødelægge dine data.

    Sådan sorterer du datoer i kronologisk rækkefølge

    Det er meget nemt at arrangere datoer i kronologisk rækkefølge i Excel. Du skal blot bruge standard Stigende sortering mulighed:

    1. Vælg de datoer, du vil sortere kronologisk.
    2. På den Hjem under fanen, i fanen Formater gruppe, klik på Sortere & Filtrere og vælg Sortere fra ældst til nyeste Alternativt kan du bruge A-Z Data under fanen, i fanen Sortere & Filtrere gruppe.

    Sådan sorteres efter dato i Excel

    Excel-sorteringsmulighederne kan også bruges til at omarrangere hele tabellen og ikke kun en enkelt kolonne. Hvis du vil sortere poster efter dato og beholde rækkerne intakte, skal du udvide markeringen, når du bliver bedt om det.

    Her er de detaljerede trin til at sortere data i Excel efter dato:

    1. Vælg datoerne uden kolonneoverskrift i dit regneark.
    2. På den Hjem klikker du på Sortere & Filtrere og vælge Sortere fra ældst til nyeste .

    3. Sortere advarsel dialogboksen vises. Lad standardindstillingen Udvid valget valgt, og klik på Sortere :

    Så er det nok! Posterne er blevet sorteret efter dato, og alle rækker er samlet:

    Sådan sorteres efter måned i Excel

    Der kan være tidspunkter, hvor du ønsker at sortere datoer efter måned ignorere året, f.eks. når du grupperer jubilæumsdatoer for dine kolleger eller slægtninge. I dette tilfælde vil Excel's standardsorteringsfunktion ikke fungere, fordi den altid tager højde for året, selv om dine celler er formateret til kun at vise måneden eller måned og dag.

    Løsningen er at tilføje en hjælpekolonne, udtrække månedsnummeret og sortere efter denne kolonne. For at få en måned fra en dato skal du bruge funktionen MONTH.

    I skærmbilledet nedenfor uddrager vi månedens nummer fra datoen i B2 med denne formel:

    =MONTH(B2)

    Tip. Hvis resultatet vises som en dato i stedet for et tal, skal du indstille Generelt format til formelcellerne.

    Og nu skal du sortere din tabel efter Måned kolonne. Vælg månedens numre (C2:C8), klik på Sortere & Filtrere > Sortere fra mindste til største , og udvid derefter markeringen, når Excel beder dig om det. Hvis alt er gjort korrekt, vil du få følgende resultat:

    Vær opmærksom på, at vores data nu er sorteret efter måned og ignorerer årstal og dage inden for hver måned. Hvis du ønsker at sortere efter måned og dag , og følg derefter instruktionerne fra det næste eksempel.

    Hvis månedsnavnene er angivet som tekst , og derefter sortere efter en brugerdefineret liste som forklaret i dette eksempel.

    Sådan sorteres fødselsdage i Excel efter måned og dag

    Når du skal arrangere datoer til en fødselsdagskalender, vil den optimale løsning være at sortere datoerne efter måned og dag. Derfor har du brug for en formel, der trækker måneder og dage ud fra fødselsdatoerne.

    I dette tilfælde er Excel TEXT-funktionen, som kan konvertere en dato til en tekststreng i det angivne format, praktisk. Til vores formål vil formatkoden "mmdd" eller "mm.dd" fungere.

    Med kildedatoen i B2 har formlen denne form:

    =TEXT(B2, "mm.dd")

    Derefter sorteres de Måned og dag kolonnen fra den største til den mindste, og du vil få dataene arrangeret i rækkefølge efter dagene i hver måned.

    Det samme resultat kan opnås ved at bruge DATE-formlen på følgende måde:

    =DATE(2000, MÅNED(B2),DAG(B2))

    Formlen genererer en liste over datoer ved at udtrække måned og dag fra den faktiske dato i B2 og erstatte det rigtige årstal med et falsk årstal, 2000 i dette eksempel, men du kan indsætte et hvilket som helst årstal. Ideen er at have det samme årstal for alle datoerne og derefter sortere listen over datoer i kronologisk rækkefølge. Da årstallet er det samme, vil datoerne blive sorteret efter måned og dag, hvilket er præcis, hvad du erleder efter.

    Sådan sorteres data efter år i Excel

    Når du skal sortere efter årstal, er det nemmest at ordne datoer i kronologisk rækkefølge med Excels opadgående sortering ( Ældste til nyeste ) mulighed.

    Dette vil sortere datoer efter år, derefter efter måned og derefter efter dag, som vist i skærmbilledet nedenfor.

    Hvis du af en eller anden grund ikke er tilfreds med en sådan ordning, kan du tilføje en hjælpekolonne med formlen YEAR, der uddrager årstallet fra datoen:

    =ÅR(C2)

    Efter sortering af data efter År kolonnen, vil du bemærke, at datoerne kun er sorteret efter årstal, ignorering af måneder og dage .

    Tip. Hvis du gerne vil sortere datoer efter dag uden at tage hensyn til måneder og år, udtrække dagen ved hjælp af funktionen DAY og derefter sortere efter den Dag kolonne:

    =DAG(B2)

    Sådan sorteres efter ugedage i Excel

    Hvis du vil sortere data efter ugedag, skal du også bruge en hjælpekolonne som i de tidligere eksempler. I dette tilfælde udfylder vi hjælpekolonnen med formlen WEEKDAY, der returnerer et tal svarende til ugedagen, og derefter sorterer vi efter hjælpekolonnen.

    For en uge, der starter fra søndag (1) til lørdag (7), skal du bruge denne formel:

    =WEEKDAY(A2)

    Hvis din uge starter fra mandag (1) til søndag (7), er det her den rigtige:

    = UGEDAG(A2, 2)

    Hvor A2 er den celle, der indeholder datoen.

    I dette eksempel brugte vi den første formel og fik dette resultat:

    Hvis ugedagsnavnene er angivet som tekst , ikke som datoer, skal du bruge funktionen Tilpasset sortering som forklaret i det næste eksempel.

    Sådan sorteres data i Excel efter månedsnavne (eller ugedagsnavne)

    Hvis du har en liste over måneders navne som tekst , ikke som datoer, der er formateret til kun at vise måneder, kan det være et problem at anvende Excels opadgående sortering - den vil arrangere månedernes navne alfabetisk i stedet for at sortere efter månedsrækkefølge fra januar til december. I dette tilfælde vil en brugerdefineret sortering hjælpe:

    1. Vælg de poster, som du vil sortere efter månedsnavn.
    2. På den Data under fanen, i fanen Sortere & Filtrere gruppe, klik på Sortere .
    3. I den Sortere dialogboksen, skal du gøre følgende:
      • Under Kolonne , vælg navnet på den kolonne, der indeholder månedsnavnene.
      • Under Sortere efter , vælg Celleværdier .
      • Under Bestil , vælg Brugerdefineret liste .
    4. I den Brugerdefinerede lister dialogboksen, skal du vælge enten fulde månedsnavne ( Januar , Februar , Marts , ...) eller korte navne ( Jan , feb , Mar ...) afhængigt af, hvordan månederne er anført i dit regneark:

  • Klik på OK to gange for at lukke begge dialogbokse.
  • Færdig! Dine data er blevet sorteret efter månedsnavn i kronologisk rækkefølge, ikke alfabetisk:

    Tip. Hvis du vil sortere efter navne på de ugedage , vælg enten fulde navne ( Søndag , Mandag , Tirsdag , ...) eller korte navne ( Sun , Mon , Tue ...) i den Brugerdefinerede lister dialogboksen.

    Sådan sorteres automatisk efter dato i Excel

    Som du har set, klarer Excel-sorteringsfunktionen en lang række udfordringer. Den eneste ulempe er, at den ikke er dynamisk. Det betyder, at du skal sortere dine data på ny ved hver ændring, og når der tilføjes nye oplysninger. Måske spekulerer du på, om der er en måde at sortere automatisk, hver gang der tilføjes en ny dato, så dine data altid er i orden.

    Den bedste måde at opnå dette på er ved at bruge en makro. Nedenfor finder du et par kodeeksempler til automatisk sortering af følgende data efter dato i kronologisk rækkefølge.

    Makro 1: Automatisk sortering ved hver ændring af regneark

    Denne makro udføres, når der sker en ændring et sted i regnearket.

    Det antages, at dine data er i kolonne A til C, og at de datoer, du vil sortere efter, er i kolonne C, begyndende i C2. Det antages også, at række 1 indeholder overskrifter (Header:=xlYes). Hvis dine poster er i forskellige kolonner, skal du foretage følgende justeringer:

    • Ændr A1-referencen til den øverste venstre celle i målområdet (inklusive overskrifter).
    • Ændre C2-referencen til den øverste celle, der indeholder en dato.
    Private Sub Worksheet_Change( ByVal Target As Range) On Error Resume Next Range( "A1" ).Sort Key1:=Range( "C2" ), _ Order1:=xlAscending, Header:=xlYes, _ OrderCustom:=1, MatchCase:= False , _ Orientation:=xlTopToBottom End Sub

    Makro 2: Automatisk sortering, når der foretages ændringer i et bestemt område

    Hvis du arbejder med et stort regneark, der indeholder mange oplysninger, kan det være besværligt at sortere igen ved enhver ændring i arket. I dette tilfælde giver det mening at begrænse udløsningen af makroen til de ændringer, der sker i et bestemt område. Den følgende VBA-kode sorterer kun dataene, når der sker en ændring i kolonne C, der indeholder datoerne.

    Private Sub Worksheet_Change( ByVal Target As Range) On Error Resume Next If Not Intersect(Target, Range( "C:C" )) Is Nothing Then Range( "A1" ).Sort Key1:=Range( "C2" ), _ Order1:=xlAscending, Header:=xlYes, _ OrderCustom:=1, MatchCase:= False , _ Orientation:=xlTopToBottom End If End Sub

    Tip. Disse makroer kan bruges til automatisk sortering efter enhver datatype , ikke kun datoer. Vores eksempelkoder sorterer i stigende rækkefølge. Hvis du ønsker at sortere faldende , ændre Order1:=xlAscending til Order1:=xlDescending.

    Sådan tilføjer du makroen til dit regneark

    Da begge makroer køres automatisk ved ændring af et regneark, skal koden indsættes i det ark, hvor du ønsker at sortere data (ark 1 i dette eksempel). Sådan gør du:

    1. Tryk på Alt + F11 for at åbne VBA-editoren.
    2. I den Projekt Explorer i venstre side, dobbeltklik på det ark, hvor du vil foretage automatisk sortering.
    3. Indsæt koden i vinduet Kode.

    Automatisk sortering af datoer med formel

    Hvis du har en liste med datoer, og du gerne vil have dem automatisk arrangeret i kronologisk rækkefølge i en separat kolonne side om side med den oprindelige liste, kan du gøre dette med følgende arrayformel:

    =IFERROR(INDEX($A$2:$A$20, MATCH(ROWS($A$2:A2), COUNTIF($A$2:$A$20, "<="&$A$2:$A$20), 0)), ""), "")

    Hvor A2:A20 er de oprindelige (usorterede) datoer, herunder et par tomme celler til eventuelle nye indtastninger.

    Indtast formlen i en tom celle ved siden af kolonnen med de oprindelige datoer (C2 i dette eksempel), og tryk på tasterne Ctrl + Shift + Enter samtidigt for at færdiggøre den. Træk derefter formlen ned til de resterende celler (C2:C20 i vores tilfælde).

    Tip: Hvis du vil have nyligt tilføjede datoer sorteret automatisk, skal du sørge for at medtage et tilstrækkeligt antal tomme celler i det pågældende område. Vores liste over datoer er f.eks. i området A2:A7, men vi angiver $A$2:$A$20 i formlen og udfylder den i cellerne C2 til C20. Funktionen IFERROR forhindrer fejl i de ekstra celler og returnerer i stedet en tom streng ("").

    Excel-sortering efter dato virker ikke

    Hvis dine datoer ikke er sorteret som de skal, er de sandsynligvis indtastet i et format, som Excel ikke kan forstå, og derfor opfattes de som tekststrenge i stedet for datoer. I følgende vejledning forklares det, hvordan du skelner de såkaldte "tekstdatoer" og konverterer dem til normale Excel-datoer: Sådan konverteres tekst til dato i Excel.

    Sådan sorterer du efter dato i Excel. Tak for din læsning, og jeg håber at se dig på vores blog i næste uge!

    Tilgængelige downloads

    Eksempler på formler til sortering efter dato (.xlsx-fil)

    Makro til automatisk sortering (.xlsm-fil)

    Michael Brown er en dedikeret teknologientusiast med en passion for at forenkle komplekse processer ved hjælp af softwareværktøjer. Med mere end ti års erfaring i teknologibranchen har han finpudset sine færdigheder i Microsoft Excel og Outlook samt Google Sheets og Docs. Michaels blog er dedikeret til at dele sin viden og ekspertise med andre og giver nemme at følge tips og vejledninger til at forbedre produktiviteten og effektiviteten. Uanset om du er en erfaren professionel eller nybegynder, tilbyder Michaels blog værdifuld indsigt og praktiske råd til at få mest muligt ud af disse vigtige softwareværktøjer.