Miten lajitella päivämäärän mukaan Excelissä: kronologisesti, kuukausittain, automaattinen lajittelu

  • Jaa Tämä
Michael Brown

Tässä artikkelissa tarkastelemme eri tapoja lajitella päivämääriä Excelissä. Opit, miten päivämäärät voidaan järjestää nopeasti aikajärjestykseen, lajitella kuukauden mukaan, kun vuosia ei oteta huomioon, lajitella syntymäpäivät kuukauden ja päivän mukaan sekä lajitella automaattisesti päivämäärän mukaan, kun syötät uusia arvoja.

Excelin sisäänrakennetut lajitteluvaihtoehdot ovat tehokkaita ja toimivia työkaluja, mutta ne eivät aina toimi oikein, kun on kyse päivämäärien lajittelusta. Tässä opetusohjelmassa opit muutamia hyödyllisiä niksejä, joilla voit järjestää Excelin päivämäärän mukaan mielekkäällä tavalla sotkematta tietojasi.

    Miten lajitella päivämääriä aikajärjestyksessä

    Päivämäärien järjestäminen kronologiseen järjestykseen Excelissä on erittäin helppoa. Käytät vain tavallista Nouseva lajittelu vaihtoehto:

    1. Valitse päivämäärät, jotka haluat lajitella kronologisesti.
    2. On Etusivu välilehdellä, kohdassa Muodot ryhmää, napsauta Lajittele & suodata ja valitse Lajittele vanhimmasta uusimpaan Vaihtoehtoisesti voit käyttää A-Z vaihtoehto Tiedot välilehdellä, kohdassa Lajittele & suodata ryhmä.

    Miten lajitella päivämäärän mukaan Excelissä

    Excelin lajitteluvaihtoehtoja voidaan käyttää myös koko taulukon, ei vain yhden sarakkeen, uudelleenjärjestämiseen. Jos haluat lajitella tietueet päivämäärän mukaan ja säilyttää rivit ennallaan, on tärkeää laajentaa valintaa, kun sitä pyydetään.

    Tässä ovat yksityiskohtaiset vaiheet lajitella tietoja Excelissä päivämäärän mukaan:

    1. Valitse laskentataulukosta päivämäärät ilman sarakeotsikkoa.
    2. On Etusivu välilehdellä, napsauta Lajittele & suodata ja valitse Lajittele vanhimmasta uusimpaan .

    3. The Lajittele varoitus Jätä oletusasetukset Laajenna valintaa vaihtoehto valittuna, ja napsauta Lajittele :

    Se on siinä! Tietueet on lajiteltu päivämäärän mukaan ja kaikki rivit pidetään yhdessä:

    Miten lajitella kuukauden mukaan Excelissä

    Joskus saatat haluta lajittele päivämäärät kuukauden mukaan vuoden huomiotta jättäminen, esimerkiksi kun ryhmitellään kollegoiden tai sukulaisten vuosipäiviä. Tässä tapauksessa Excelin oletuslajittelutoiminto ei toimi, koska se ottaa aina huomioon vuoden, vaikka solut olisi muotoiltu näyttämään vain kuukausi tai kuukausi ja päivä.

    Ratkaisu on lisätä apusarake, poimia kuukauden numero ja lajitella sarakkeen mukaan. Voit saada kuukauden päivämäärän käyttämällä MONTH-funktiota.

    Alla olevassa kuvakaappauksessa poimimme kuukauden numeron B2-päivämäärästä tällä kaavalla:

    =MONTH(B2)

    Vihje. Jos tulos näytetään päivämääränä eikä numerona, aseta asetukset Yleistä muoto kaavan soluihin.

    Ja nyt lajittele taulukkosi Kuukausi Valitse tätä varten kuukauden numerot (C2:C8), napsauta painiketta Lajittele & suodata > Lajittele pienimmästä suurimpaan ja laajenna sitten valintaa, kun Excel pyytää sitä tekemään. Jos kaikki on tehty oikein, saat seuraavan tuloksen:

    Huomioithan, että tietomme on nyt lajiteltu kuukausittain, eikä kunkin kuukauden sisällä olevia vuosia ja päiviä oteta huomioon. Jos haluatte lajittele kuukauden ja päivän mukaan ja noudata sitten seuraavan esimerkin ohjeita.

    Jos kuukausien nimet syötetään muodossa teksti ja lajittele sitten mukautetun luettelon mukaan, kuten tässä esimerkissä selitetään.

    Kuinka lajitella syntymäpäivät Excelissä kuukauden ja päivän mukaan

    Kun järjestät päivämääriä syntymäpäiväkalenteria varten, optimaalinen ratkaisu on lajitella päivämäärät kuukauden ja päivän mukaan. Tarvitset siis kaavan, joka vetää syntymäpäivistä kuukaudet ja päivät.

    Tässä tapauksessa Excelin TEXT-toiminto, joka voi muuntaa päivämäärän tekstijonoksi määritetyssä muodossa, on kätevä. Meidän tarkoitukseemme sopii "mmdd" tai "mm.dd" -muotoinen koodi.

    Kun lähdepäivämäärä on B2, kaava on seuraavanlainen:

    =TEXT(B2, "mm.ddd")

    Seuraavaksi lajittele Kuukausi ja päivä saraketta suurimmasta pienimpään, ja saat tiedot järjestykseen kunkin kuukauden päivien mukaan.

    Sama tulos voidaan saavuttaa käyttämällä DATE-kaavaa seuraavasti:

    =DATE(2000, KUUKAUSI(B2),PÄIVÄ(B2))

    Kaava luo luettelon päivämääristä poimimalla kuukauden ja päivän todellisesta päivämäärästä B2:ssa ja korvaamalla todellisen vuoden väärennetyllä vuodella, tässä esimerkissä 2000, vaikka voit laittaa minkä tahansa. Ajatuksena on, että kaikilla päivämäärillä on sama vuosi, ja sen jälkeen lajitella luettelo päivämääristä kronologiseen järjestykseen. Koska vuosi on sama, päivämäärät lajitellaan kuukauden ja päivän mukaan, mikä on juuri se, mitä olet tekemässä.etsitään.

    Kuinka lajitella tietoja vuoden mukaan Excelissä

    Kun kyseessä on lajittelu vuoden mukaan, helpoin tapa on järjestää päivämäärät aikajärjestykseen Excelin nousevalla lajittelulla ( Vanhimmasta uusimpaan ) vaihtoehto.

    Tämä lajittelee päivämäärät ensin vuoden, sitten kuukauden ja sitten päivän mukaan, kuten alla olevassa kuvassa näkyy.

    Jos jostain syystä et ole tyytyväinen tällaiseen järjestelyyn, voit lisätä apusarakkeen, jossa on YEAR-kaava, joka poimii vuosiluvun päivämääristä:

    =VUOSI(C2)

    Kun tiedot on lajiteltu Vuosi sarakkeessa huomaat, että päivämäärät on lajiteltu vain vuoden mukaan, kuukausien ja päivien huomiotta jättäminen .

    Vinkki. Jos haluat lajittele päivämäärät päivän mukaan ottamatta huomioon kuukausia ja vuosia, poimitaan päivä käyttämällä DAY-funktiota ja lajitellaan sen jälkeen Päivä sarake:

    =PÄIVÄ(B2)

    Kuinka lajitella viikonpäivien mukaan Excelissä

    Jos haluat lajitella tiedot viikonpäivän mukaan, tarvitset myös apusarakkeen, kuten edellisissä esimerkeissä. Tässä tapauksessa täytämme apusarakkeen WEEKDAY-kaavalla, joka palauttaa viikonpäivää vastaavan numeron, ja lajittelemme sitten apusarakkeen mukaan.

    Jos viikko alkaa sunnuntaista (1) lauantaihin (7), käytetään tätä kaavaa:

    =WEEKDAY(A2)

    Jos viikkosi alkaa maanantaista (1) sunnuntaihin (7), tämä on oikea:

    =VIIKONPÄIVÄ(A2, 2)

    Jossa A2 on solu, joka sisältää päivämäärän.

    Tässä esimerkissä käytimme ensimmäistä kaavaa ja saimme tämän tuloksen:

    Jos arkipäivien nimet on syötetty muodossa teksti , ei päivämäärinä, käytä mukautettua lajittelutoimintoa, kuten seuraavassa esimerkissä selitetään.

    Miten lajitella tietoja Excelissä kuukauden nimien (tai viikonpäivien nimien) mukaan?

    Jos sinulla on luettelo kuukauden nimistä, kuten teksti , ei päivämäärinä, jotka on muotoiltu näyttämään vain kuukausia, Excelin nousevan lajittelun soveltaminen voi olla ongelma - se järjestää kuukausien nimet aakkosjärjestykseen sen sijaan, että ne lajitellaan kuukauden järjestyksessä tammikuusta joulukuuhun. Tässä tapauksessa mukautettu lajittelu auttaa:

    1. Valitse tietueet, jotka haluat lajitella kuukauden nimen mukaan.
    2. On Tiedot välilehdellä, kohdassa Lajittele & suodata ryhmää, klikkaa Lajittele .
    3. Vuonna Lajittele valintaikkunassa, toimi seuraavasti:
      • osoitteessa Pylväs , valitse sen sarakkeen nimi, joka sisältää kuukausien nimet.
      • osoitteessa Lajittele , valitse Solun arvot .
      • osoitteessa Tilaa , valitse Mukautettu luettelo .
    4. Vuonna Mukautetut luettelot valintaikkunassa, valitse joko koko kuukauden nimet ( Tammikuu , Helmikuu , Maaliskuu , ...) tai lyhyitä nimiä ( Jan , Helmikuu , Mar ...) riippuen siitä, miten kuukaudet on lueteltu laskentataulukossasi:

  • Sulje molemmat valintaikkunat napsauttamalla OK kahdesti.
  • Valmis! Tietosi on lajiteltu kuukauden nimen mukaan aikajärjestyksessä, ei aakkosjärjestyksessä:

    Vinkki. Voit lajitella nimet viikonpäivät , valitse joko koko nimi ( Sunnuntai , Maanantai , Tiistai , ...) tai lyhyitä nimiä ( Sun , Mon , Ti ...) Mukautetut luettelot valintaikkuna.

    Kuinka lajitella automaattisesti päivämäärän mukaan Excelissä

    Kuten olet nähnyt, Excelin lajittelutoiminto selviytyy monista haasteista. Ainoa haittapuoli on, että se ei ole dynaaminen. Se tarkoittaa, että sinun on lajiteltava tietosi uudelleen jokaisen muutoksen yhteydessä ja aina kun uusia tietoja lisätään. Ehkä mietit, onko olemassa keino lajitella automaattisesti aina kun uusi päivämäärä lisätään, jotta tietosi ovat aina järjestyksessä.

    Paras tapa toteuttaa tämä on käyttää makroa. Alla on pari koodiesimerkkiä, joiden avulla voit lajitella seuraavat tiedot automaattisesti päivämäärän mukaan aikajärjestyksessä.

    Makro 1: Automaattinen lajittelu jokaisen työarkin muutoksen yhteydessä

    Tämä makro suoritetaan aina, kun työarkissa tapahtuu muutos.

    Oletetaan, että tietosi ovat sarakkeissa A-C ja päivämäärät, joiden mukaan haluat lajitella, ovat sarakkeessa C, alkaen sarakkeesta C2. Oletetaan myös, että rivi 1 sisältää otsikot (Header:=xlYes). Jos tietueesi ovat eri sarakkeissa, tee seuraavat muutokset:

    • Vaihda A1-viite kohdealueesi vasemmanpuoleiseen yläsoluun (otsikot mukaan lukien).
    • Vaihda C2-viite ylimpään soluun, joka sisältää päivämäärän.
    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: Automaattinen lajittelu, kun tiettyyn alueeseen tehdään muutoksia.

    Jos työskentelet valtavan suuren, paljon tietoja sisältävän työarkin kanssa, lajittelun muuttaminen uudelleen aivan minkä tahansa muutoksen yhteydessä voi olla hankalaa. Tällöin on järkevää rajoittaa makron käynnistäminen vain tietyllä alueella tapahtuviin muutoksiin. Seuraava VBA-koodi lajittelee tiedot vain silloin, kun päivämäärät sisältävässä sarakkeessa C tapahtuu muutos.

    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 If End Sub

    Vinkki. Näitä makroja voidaan käyttää automaattiseen lajitteluun seuraavasti mikä tahansa tietotyyppi Esimerkkikoodimme lajittelevat nousevassa järjestyksessä. Jos haluatte lajittelu laskeva , vaihda Order1:=xlAscending muotoon Order1:=xlDescending.

    Makron lisääminen laskentataulukkoon

    Koska molemmat makrot suoritetaan automaattisesti työarkin muuttuessa, koodi on lisättävä sille arkille, jolle haluat lajitella tiedot (tässä esimerkissä Sheet1). Näin menetellään:

    1. Avaa VBA-editori painamalla Alt + F11.
    2. Vuonna Project Explorer kaksoisnapsauta vasemmalla sitä arkkia, jonka haluat lajitella automaattisesti.
    3. Liitä koodi Koodiikkunaan.

    Automaattinen lajittelu päivämäärät kaavalla

    Oletetaan, että sinulla on luettelo päivämääristä ja haluat järjestää ne automaattisesti aikajärjestykseen erilliseen sarakkeeseen alkuperäisen luettelon rinnalle. Tämä voidaan tehdä seuraavalla sarakekaavalla:

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

    Jossa A2:A20 ovat alkuperäiset (lajittelemattomat) päivämäärät, mukaan lukien muutama tyhjä solu mahdollisia uusia merkintöjä varten.

    Kirjoita kaava alkuperäiset päivämäärät sisältävän sarakkeen (tässä esimerkissä C2) vieressä olevaan tyhjään soluun ja täytä kaava painamalla samanaikaisesti Ctrl + Shift + Enter -näppäimiä. Vedä kaava sitten alaspäin jäljellä oleviin soluihin (tässä tapauksessa C2:C20).

    Vihje: Jos haluat, että uudet päivämäärät lajitellaan automaattisesti, varmista, että viitatulla alueella on riittävästi tyhjiä soluja. Esimerkiksi päivämääräluettelomme on alueella A2:A7, mutta annamme kaavaan $A$2:$A$20 ja täytämme sen soluihin C2-C20. IFERROR-funktio estää virheet ylimääräisissä soluissa palauttamalla tyhjän merkkijonon ("").

    Excelin lajittelu päivämäärän mukaan ei toimi

    Jos päivämäärät eivät ole lajiteltuja niin kuin pitäisi, ne on todennäköisesti syötetty muodossa, jota Excel ei ymmärrä, joten ne mielletään pikemminkin tekstijonoiksi kuin päivämääriksi. Seuraavassa ohjeessa selitetään, miten niin sanotut "tekstipäivämäärät" voidaan erottaa toisistaan ja muuntaa ne tavallisiksi Excel-päivämääriksi: Tekstin muuntaminen päivämääräksi Excelissä.

    Näin lajittelet päivämäärän mukaan Excelissä. Kiitos lukemisesta ja toivottavasti tapaamme blogissamme ensi viikolla!

    Saatavilla olevat lataukset

    Esimerkkejä lajittelukaavoista päivämäärän mukaan (.xlsx-tiedosto)

    Automaattinen lajittelumakro (.xlsm-tiedosto)

    Michael Brown on omistautunut teknologian harrastaja, jolla on intohimo yksinkertaistaa monimutkaisia ​​prosesseja ohjelmistotyökalujen avulla. Yli vuosikymmenen kokemuksella teknologia-alalta hän on hionut taitojaan Microsoft Excelissä ja Outlookissa sekä Google Sheetsissä ja Docsissa. Michaelin blogi on omistettu jakamaan tietojaan ja asiantuntemustaan ​​muiden kanssa, ja se tarjoaa helposti seurattavia vinkkejä ja opetusohjelmia tuottavuuden ja tehokkuuden parantamiseksi. Olitpa kokenut ammattilainen tai aloittelija, Michaelin blogi tarjoaa arvokkaita oivalluksia ja käytännön neuvoja, joiden avulla saat kaiken irti näistä tärkeistä ohjelmistotyökaluista.