Sisällysluettelo
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:
- Valitse päivämäärät, jotka haluat lajitella kronologisesti.
- 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:
- Valitse laskentataulukosta päivämäärät ilman sarakeotsikkoa.
- On Etusivu välilehdellä, napsauta Lajittele & suodata ja valitse Lajittele vanhimmasta uusimpaan .
- 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:
- Valitse tietueet, jotka haluat lajitella kuukauden nimen mukaan.
- On Tiedot välilehdellä, kohdassa Lajittele & suodata ryhmää, klikkaa Lajittele .
- 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 .
- 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:
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.
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 SubVinkki. 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:
- Avaa VBA-editori painamalla Alt + F11.
- Vuonna Project Explorer kaksoisnapsauta vasemmalla sitä arkkia, jonka haluat lajitella automaattisesti.
- 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)