Innholdsfortegnelse
I denne artikkelen skal vi se på ulike måter å sortere datoer på i Excel. Du vil lære hvordan du raskt kan ordne datoer i kronologisk rekkefølge, sortere etter måned og ignorere år, sortere fødselsdager etter måned og dag, og hvordan du automatisk sorterer etter dato når du legger inn nye verdier.
Excels innebygde sorteringsalternativer er kraftige og effektive verktøy, men de fungerer ikke alltid riktig når det kommer til sortering av datoer. Denne opplæringen vil lære deg noen nyttige triks for å ordne Excel etter dato på en meningsfull måte uten å rote til dataene dine.
Hvordan sortere datoer i kronologisk rekkefølge
Arrangere datoer i kronologisk rekkefølge i Excel er veldig enkelt. Du bruker bare standardalternativet Stigende sortering :
- Velg datoene du vil sortere kronologisk.
- På fanen Hjem , i Formater -gruppen klikker du Sorter & Filtrer og velg Sorter eldste til nyeste . Alternativt kan du bruke A-Z -alternativet i kategorien Data , i Sorter & Filter gruppe.
Hvordan sortere etter dato i Excel
Sorteringsalternativene i Excel kan også brukes til å omorganisere hele tabellen, ikke bare en enkelt kolonne. For å sortere poster etter dato og holde radene intakte, er nøkkelen å utvide utvalget når du blir bedt om det.
Her er de detaljerte trinnene for sortering av data i Excel etter dato:
- I regnearket ditt, velg datoene uten kolonnenoverskrift.
- I kategorien Hjem klikker du Sorter & Filtrer og velg Sorter eldste til nyeste .
- Dialogboksen Sorteringsadvarsel vises. La standardalternativet Utvid utvalget være valgt, og klikk på Sorter :
Det er det! Postene er sortert etter dato og alle radene holdes samlet:
Hvordan sortere etter måned i Excel
Det kan være tidspunkter du ønsker det å sortere datoer etter måned og ignorere året, for eksempel når du grupperer jubileumsdatoer for dine kolleger eller slektninger. I dette tilfellet vil ikke standard Excel-sorteringsfunksjonen fungere fordi den alltid vurderer året, selv om cellene dine er formatert til å vise bare måneden eller måneden og dagen.
Løsningen er å legge til en hjelpekolonne , trekk ut månedsnummeret og sorter etter den kolonnen. For å få en måned fra dato, bruk MONTH-funksjonen.
I skjermbildet nedenfor trekker vi ut månedsnummeret fra datoen i B2 med denne formelen:
=MONTH(B2)
Tips. Hvis resultatet vises som dato i stedet for et tall, setter du formatet Generelt til formelcellene.
Og nå sorterer du tabellen etter Måned -kolonnen. For dette, velg månedstallene (C2:C8), klikk Sorter & Filtrer > Sorter minste til størst , og utvid deretter utvalget når Excel ber deg om det. Hvis alt er gjort riktig, får du følgenderesultat:
Vær oppmerksom på at dataene våre nå er sortert etter måned, og ignorerer årene og dagene i hver måned. Hvis du vil sortere etter måned og dag , følg instruksjonene fra neste eksempel.
Hvis månedsnavnene er skrevet inn som tekst , sorterer du av en egendefinert liste som forklart i dette eksempelet.
Hvordan sortere bursdager i Excel etter måned og dag
Når du arrangerer datoer for en bursdagskalender, vil den optimale løsningen være sortering av datoer etter måned og dag. Følgelig trenger du en formel som trekker måneder og dager fra fødselsdatoene.
I dette tilfellet kommer Excel TEXT-funksjonen, som kan konvertere en dato til en tekststreng i det angitte formatet, nyttig . For vårt formål vil formatkoden "mmdd" eller "mm.dd" fungere.
Med kildedatoen i B2 har formelen denne formen:
=TEXT(B2, "mm.dd")
Sorter deretter kolonnen Måned og dag fra størst til minste, og du vil få dataene ordnet i rekkefølge etter dagene i hver måned.
Det samme resultatet kan oppnås ved å bruke DATO-formelen slik:
=DATE(2000, MONTH(B2),DAY(B2))
Formelen genererer en liste over datoer ved å trekke ut måneden og dagen fra den faktiske datoen i B2 og erstatte ekte år med en falsk en, 2000 i dette eksemplet, selv om du kan sette hvilken som helst. Tanken er å ha samme årstall for alle datoene, og deretter sortere datolisten i kronologisk rekkefølge.Siden året er det samme, vil datoene bli sortert etter måned og dag, som er akkurat det du ser etter.
Hvordan sortere data etter år i Excel
Når det gjelder sortering etter år, er den enkleste måten å ordne datoer i kronologisk rekkefølge med Excels stigende sorteringsalternativ ( Eldste til Nyeste ).
Dette vil sortere datoer etter år, deretter etter måned, og deretter etter dag som vist i skjermbildet nedenfor.
Hvis du av en eller annen grunn ikke er fornøyd med en slik ordning, kan du legge til en hjelpekolonne med ÅR-formelen som trekker ut året fra datoen:
=YEAR(C2)
Etter å ha sortert data etter År -kolonnen, vil du legge merke til at datoene er sortert bare etter år, ignorerer måneder og dager .
Tips. Hvis du vil sortere datoer etter dag uten hensyn til måneder og år, trekk ut dagen ved å bruke DAG-funksjonen, og sorter deretter etter Dag -kolonnen:
=DAY(B2)
Hvordan sortere etter ukedager i Excel
For å sortere data etter ukedag, trenger du også en hjelpekolonne som i de foregående eksemplene. I dette tilfellet vil vi fylle ut hjelpekolonnen med WEEKDAY-formelen som returnerer et tall som tilsvarer ukedagen, og deretter sortere etter hjelpekolonnen.
For en uke som starter fra søndag (1. ) til lørdag (7), er dette formelen du skal bruke:
=WEEKDAY(A2)
Hvis uken starter fra mandag (1) til søndag(7), her er den riktige:
=WEEKDAY(A2, 2)
Hvor A2 er cellen som inneholder datoen.
For dette eksemplet brukte vi den første formelen og fikk denne resultat:
Hvis ukedagnavnene er skrevet inn som tekst , ikke som datoer, bruk deretter funksjonen Egendefinert sortering som forklart i neste eksempel.
Hvordan sortere data i Excel etter månedsnavn (eller ukedagnavn)
Hvis du har en liste over månedsnavn som tekst , ikke som datoer formatert for å vise bare måneder, kan det være et problem å bruke Excels stigende sortering - det vil ordne månedsnavnene alfabetisk i stedet for å sortere etter månedsrekkefølge fra januar til desember. I dette tilfellet vil en tilpasset sortering hjelpe:
- Velg postene du vil sortere etter månedsnavn.
- På Data -fanen, i Sorter & Filter -gruppen, klikk Sorter .
- Gjør følgende i dialogboksen Sorter :
- Under Kolonne , velg navnet på kolonnen som inneholder månedsnavnene.
- Under Sorter på velger du Celleverdier .
- Under Bestill , velg Egendefinert liste .
- I dialogboksen Egendefinerte lister velger du enten hele månedsnavn ( januar , februar , mars , …) eller korte navn ( januar , feb , Mar ...) avhengig av hvordan månedene er oppført i regnearket:
Ferdig! Dataene dine er sortert etter månedsnavn i kronologisk rekkefølge, ikke alfabetisk:
Tips. For å sortere etter navnene på ukedagene , velg enten fulle navn ( søndag , mandag , tirsdag , …) eller korte navn ( søn , man , tirs ...) i dialogboksen Egendefinerte lister .
Hvordan automatisk sortere etter dato i Excel
Som du har sett, takler Excel Sort-funksjonen en rekke utfordringer. Den eneste ulempen er at den ikke er dynamisk. Det betyr at du må sortere dataene dine på nytt med hver endring og hver gang ny informasjon legges til. Kanskje du lurer på om det er en måte å sortere automatisk hver gang en ny dato legges til, slik at dataene dine alltid er i orden.
Den beste måten å oppnå dette på er å bruke en makro. Nedenfor finner du et par kodeeksempler for å automatisk sortere følgende data etter dato i kronologisk rekkefølge.
Makro 1: Automatisk sortering ved hver endring av regneark
Denne makroen utføres når det skjer en endring hvor som helst i regnearket.
Det antas at dataene dine er i kolonnene A til C, og datoene du vil sortere etter er i kolonne C, som begynner i C2. Det antas også at rad 1 inneholder overskrifter (Header:=xlYes). Hvis postene dine er i forskjellige kolonner, gjør følgende justeringer:
- Endre A1-referansen til den øvre venstre cellen imålområde (inkludert overskrifter).
- Endre C2-referansen til den øverste cellen som inneholder en dato.
Makro 2: Automatisk sortering når endringer gjøres i et spesifikt område
Hvis du jobber med et stort regneark som inneholder mye informasjon, kan det være vanskelig å sortere om med absolutt enhver endring i arket. I dette tilfellet er det fornuftig å begrense utløsningen av makroen til endringene som skjer i et spesifikt område. Følgende VBA-kode sorterer dataene bare når det gjøres en endring i kolonne C som inneholder datoene.
Private Sub Worksheet_Change( ByVal Target As Range) On Error Resume Next If Not Intersect(Target, Range( "C:C" )) Is Nothing Then Range( "A1" ).Sorteringsnøkkel1:=Range( "C2" ), _ Order1:=xlAscending, Header:=xlYes, _ OrderCustom:=1, MatchCase:= False , _ Orientation:=xlTopToBottom End If End SubTips. Disse makroene kan brukes til å automatisk sortere etter en hvilken som helst datatype , ikke bare datoer. Eksempelkodene våre sorterer i stigende rekkefølge. Hvis du vil sortere synkende , endre Order1:=xlAscending til Order1:=xlDescending.
Slik legger du til makroen i regnearket ditt
Da begge makroene kjøres automatisk ved endring av et regneark,koden skal settes inn i arket der du ønsker å sortere data (ark1 i dette eksemplet). Slik gjør du det:
- Trykk Alt + F11 for å åpne VBA Editor.
- I Prosjektutforsker til venstre dobbeltklikker du arket der du vil automatisk sortering.
- Lim inn koden i kodevinduet.
Sorter datoer automatisk med formel
Forutsatt at du har en liste over datoer og du vil ha dem automatisk ordnet i kronologisk rekkefølge i en egen kolonne, side ved side med den opprinnelige listen. Dette kan gjøres med følgende matriseformel:
=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 opprinnelige (usorterte) datoene, inkludert noen tomme celler for mulige nye oppføringer.
Skriv inn formelen i en tom celle ved siden av kolonnen med de opprinnelige datoene (C2 i dette eksemplet) og trykk Ctrl + Shift + Enter-tastene samtidig for å fullføre den. Deretter drar du formelen ned til de gjenværende cellene (C2:C20 i vårt tilfelle).
Tips. For å få nylig lagt til datoer sortert automatisk, sørg for å inkludere et tilstrekkelig antall tomme celler i det refererte området. For eksempel er datolisten vår i området A2:A7, men vi leverer $A$2:$A$20 til formelen og fyller den inn i cellene C2 til C20. IFERROR-funksjonen forhindrer feil i de ekstra cellene, og returnerer en tom streng ("") i stedet.
Excel sortering etter dato fungerer ikke
Hvis datoene dine ikke er sortert som debør, mest sannsynlig legges de inn i et format som Excel ikke kan forstå, derfor oppfattes de som tekststrenger i stedet for datoer. Følgende veiledning forklarer hvordan du skiller de såkalte "tekstdatoer" og konverterer dem til vanlige Excel-datoer: Hvordan konvertere tekst til dato i Excel.
Slik sorterer du etter dato i Excel. Jeg takker for at du leser og håper å se deg på bloggen vår neste uke!
Tilgjengelige nedlastinger
Sorter etter datoformeleksempler (.xlsx-fil)
Auto sorteringsmakro ( .xlsm-fil)