Jak řadit podle data v aplikaci Excel: chronologicky, podle měsíce, automatické řazení

  • Sdílet Toto
Michael Brown

V tomto článku se podíváme na různé způsoby řazení dat v aplikaci Excel. Dozvíte se, jak rychle seřadit data v chronologickém pořadí, seřadit je podle měsíce s ignorováním let, seřadit narozeniny podle měsíce a dne a jak automaticky řadit podle data při zadávání nových hodnot.

Vestavěné možnosti řazení aplikace Excel jsou výkonné a účinné nástroje, ale ne vždy fungují správně, pokud jde o řazení dat. V tomto návodu se naučíte několik užitečných triků, jak smysluplně uspořádat Excel podle data, aniž by došlo k narušení dat.

    Jak seřadit data v chronologickém pořadí

    Uspořádání dat v chronologickém pořadí v aplikaci Excel je velmi snadné. Vzestupné třídění možnost:

    1. Vyberte data, která chcete chronologicky seřadit.
    2. Na Home na kartě Formáty klikněte na tlačítko Třídit a filtrovat a vyberte Třídit od nejstaršího po nejnovější . Případně můžete použít A-Z možnost na Data na kartě Třídit a filtrovat skupina.

    Jak řadit podle data v aplikaci Excel

    Možnosti řazení aplikace Excel lze použít i pro změnu uspořádání celé tabulky, nikoli pouze jednoho sloupce. Chcete-li seřadit záznamy podle data se zachováním řádků, je klíčové na výzvu rozšířit výběr.

    Zde je podrobný postup řazení dat v aplikaci Excel podle data:

    1. V tabulce vyberte data bez záhlaví sloupce.
    2. Na Home klikněte na kartu Třídit a filtrovat a vyberte Třídit od nejstaršího po nejnovější .

    3. Na stránkách Upozornění na třídění Zobrazí se dialogové okno. Ponechte výchozí Rozšíření výběru a klikněte na tlačítko Třídit :

    A je to! Záznamy byly seřazeny podle data a všechny řádky jsou pohromadě:

    Jak řadit podle měsíce v aplikaci Excel

    Někdy se může stát, že budete chtít seřadit data podle měsíce ignorování roku, například při seskupování dat výročí vašich kolegů nebo příbuzných. V tomto případě nebude výchozí funkce řazení aplikace Excel fungovat, protože vždy zohledňuje rok, i když jsou vaše buňky naformátovány tak, aby zobrazovaly pouze měsíc nebo měsíc a den.

    Řešením je přidat pomocný sloupec, extrahovat číslo měsíce a seřadit podle tohoto sloupce. Chcete-li získat měsíc z data, použijte funkci MONTH.

    Na následujícím obrázku získáme číslo měsíce z data v B2 pomocí tohoto vzorce:

    =MĚSÍC(B2)

    Tip. Pokud se výsledek zobrazuje jako datum, nikoli jako číslo, nastavte hodnotu Obecné formátovat buňky vzorce.

    A nyní seřaďte tabulku podle Měsíc Za tímto účelem vyberte čísla měsíců (C2:C8), klikněte na tlačítko Třídit a filtrovat > Třídit od nejmenšího po největší , a když vás k tomu Excel vyzve, výběr rozbalte. Pokud vše provedete správně, získáte následující výsledek:

    Věnujte prosím pozornost tomu, že naše data jsou nyní řazena podle měsíců, přičemž se ignorují roky a dny v rámci každého měsíce. seřadit podle měsíce a dne , pak postupujte podle pokynů z dalšího příkladu.

    Pokud jsou názvy měsíců zadány jako text , pak seřadit podle vlastního seznamu, jak je vysvětleno v tomto příkladu.

    Jak seřadit narozeniny v aplikaci Excel podle měsíce a dne

    Při uspořádání dat pro narozeninový kalendář bude optimálním řešením seřadit data podle měsíce a dne. Proto potřebujete vzorec, který by z dat narození vytáhl měsíce a dny.

    V tomto případě se hodí funkce Excel TEXT, která dokáže převést datum na textový řetězec v zadaném formátu. Pro náš účel bude fungovat kód formátu "mmdd" nebo "mm.dd".

    Se zdrojovým datem v B2 má vzorec tento tvar:

    =TEXT(B2, "mm.dd")

    Poté seřaďte Měsíc a den sloupce od největšího po nejmenší a získáte data seřazená podle dnů v jednotlivých měsících.

    Stejného výsledku lze dosáhnout pomocí vzorce DATE takto:

    =DATE(2000, MONTH(B2),DAY(B2))

    Vzorec vygeneruje seznam dat tak, že ze skutečného data v B2 extrahuje měsíc a den a skutečný rok nahradí falešným rokem, v tomto příkladu 2000, i když můžete vložit libovolný. Smyslem je mít pro všechna data stejný rok a pak seznam dat seřadit chronologicky. Protože rok je stejný, data budou seřazena podle měsíce a dne, což je přesně to, co chcete.hledá.

    Jak seřadit data podle roku v aplikaci Excel

    Pokud jde o řazení podle roku, nejjednodušší je seřadit data chronologicky pomocí vzestupného řazení aplikace Excel ( Od nejstaršího po nejnovější ).

    Tím se data seřadí podle roku, pak podle měsíce a následně podle dne, jak je znázorněno na obrázku níže.

    Pokud vám takové uspořádání z nějakého důvodu nevyhovuje, můžete přidat pomocný sloupec se vzorcem YEAR, který z data extrahuje rok:

    =YEAR(C2)

    Po seřazení dat podle Rok si všimnete, že data jsou seřazena pouze podle roku, ignorování měsíců a dnů .

    Tip. Pokud chcete seřadit data podle dne bez ohledu na měsíce a roky, vyjměte den pomocí funkce DAY a pak seřaďte podle čísla. Den sloupec:

    =DAY(B2)

    Jak třídit podle dnů v týdnu v aplikaci Excel

    Pro třídění dat podle dnů v týdnu budete také potřebovat pomocný sloupec jako v předchozích příkladech. V tomto případě budeme pomocný sloupec vyplňovat vzorcem WEEKDAY, který vrátí číslo odpovídající dni v týdnu, a poté budeme třídit podle pomocného sloupce.

    Pro týden, který začíná od neděle (1) do soboty (7), použijte tento vzorec:

    =WEEKDAY(A2)

    Pokud váš týden začíná od pondělí (1) do neděle (7), tady je ten správný:

    =TÝDEN(A2, 2)

    Kde A2 je buňka obsahující datum.

    Pro tento příklad jsme použili první vzorec a získali jsme tento výsledek:

    Pokud jsou názvy dnů v týdnu zadány jako text , nikoli jako data, pak použijte funkci Vlastní třídění, jak je vysvětleno v dalším příkladu.

    Jak řadit data v aplikaci Excel podle názvů měsíců (nebo dnů v týdnu)

    V případě, že máte seznam názvů měsíců jako text , nikoliv jako data formátovaná tak, aby se zobrazovaly pouze měsíce, může být problémem použití vzestupného řazení Excelu - ten seřadí názvy měsíců abecedně, místo aby je seřadil podle pořadí měsíců od ledna do prosince. V tomto případě pomůže vlastní řazení:

    1. Vyberte záznamy, které chcete seřadit podle názvu měsíce.
    2. Na Data na kartě Třídit a filtrovat klikněte na tlačítko Třídit .
    3. V Třídit dialogového okna proveďte následující kroky:
      • Pod Sloupec , vyberte název sloupce, který obsahuje názvy měsíců.
      • Pod Třídit na , vyberte si Hodnoty buněk .
      • Pod Objednávka , vyberte Vlastní seznam .
    4. V Vlastní seznamy v dialogovém okně vyberte buď celé názvy měsíců ( Leden , Únor , Březen , ...) nebo zkrácená jména ( Jan , Únor , Mar ...) v závislosti na tom, jak jsou měsíce uvedeny ve vašem pracovním listu:

  • Dvakrát klikněte na tlačítko OK a zavřete obě dialogová okna.
  • Hotovo! Vaše data byla seřazena podle názvu měsíce chronologicky, nikoliv abecedně:

    Tip. Chcete-li třídit podle jména dny v týdnu , vyberte buď celá jména ( Neděle , Pondělí , Úterý , ...) nebo zkrácené názvy ( Sun , Mon , Út ...) v Vlastní seznamy dialogové okno.

    Jak automaticky řadit podle data v aplikaci Excel

    Jak jste viděli, funkce Excel Sort si poradí s celou řadou problémů. Jedinou nevýhodou je, že není dynamická. To znamená, že při každé změně a při každém přidání nových informací budete muset data znovu seřadit. Možná vás zajímá, zda existuje způsob, jak data automaticky seřadit při každém přidání nového data, aby byla vždy v pořádku.

    Nejlepší způsob, jak toho dosáhnout, je použít makro. Níže najdete několik příkladů kódu pro automatické řazení následujících dat podle data v chronologickém pořadí.

    Makro 1: Automatické třídění při každé změně pracovního listu

    Toto makro se spustí vždy, když dojde ke změně kdekoli na pracovním listu.

    Předpokládá se, že vaše data jsou ve sloupcích A až C a data, podle kterých chcete třídit, jsou ve sloupci C, počínaje C2. Předpokládá se také, že řádek 1 obsahuje záhlaví (Header:=xlYes). Pokud jsou vaše záznamy v jiných sloupcích, proveďte následující úpravy:

    • Změňte odkaz A1 na levou horní buňku cílového rozsahu (včetně záhlaví).
    • Změňte odkaz C2 na nejvyšší buňku obsahující datum.
    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: Automatické třídění při změnách v určitém rozsahu

    Pokud pracujete s rozsáhlým pracovním listem, který obsahuje velké množství informací, může být přetřídění při naprosto každé změně v listu problematické. V takovém případě má smysl omezit spouštění makra na změny, které nastanou v určitém rozsahu. Následující kód VBA setřídí data pouze při změně ve sloupci C, který obsahuje data.

    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. Tato makra lze použít k automatickému třídění podle libovolný datový typ Naše vzorové kódy řadí vzestupně. Pokud byste rádi seřadit sestupně , změňte Order1:=xlAscending na Order1:=xlDescending.

    Jak přidat makro do pracovního listu

    Protože se obě makra spouštějí automaticky při změně pracovního listu, měl by být kód vložen do listu, na kterém chcete třídit data (v tomto příkladu list1). Zde je uveden postup:

    1. Stisknutím kláves Alt + F11 otevřete editor VBA.
    2. V Projekt Explorer vlevo dvakrát klikněte na list, na kterém chcete provést automatické třídění.
    3. Vložte kód do okna Kód.

    Automatické třídění dat pomocí vzorce

    Předpokládejme, že máte seznam dat a chcete je automaticky seřadit chronologicky do samostatného sloupce vedle původního seznamu. Toho lze dosáhnout pomocí následujícího vzorce pole:

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

    Kde A2:A20 jsou původní (nesetříděná) data, včetně několika prázdných buněk pro případné nové záznamy.

    Zadejte vzorec do prázdné buňky vedle sloupce s původními daty (v tomto příkladu C2) a dokončete jej současným stisknutím kláves Ctrl + Shift + Enter. Poté vzorec přetáhněte dolů do zbývajících buněk (v našem případě C2:C20).

    Tip: Chcete-li, aby se nově přidaná data automaticky řadila, nezapomeňte do odkazovaného rozsahu zahrnout dostatečný počet prázdných buněk. Například náš seznam dat je v rozsahu A2:A7, ale do vzorce zadáme $A$2:$A$20 a vyplníme je do buněk C2 až C20. Funkce IFERROR zabrání chybám v buňkách navíc a místo toho vrátí prázdný řetězec ("").

    Nefunguje řazení aplikace Excel podle data

    Pokud vaše data nejsou seřazena tak, jak by měla, s největší pravděpodobností jsou zadána ve formátu, kterému Excel nerozumí, a proto jsou vnímána jako textové řetězce, nikoli jako data. Následující návod vysvětluje, jak rozlišit takzvaná "textová data" a převést je na normální data aplikace Excel: Jak převést text na datum v aplikaci Excel.

    Takto se v Excelu třídí podle data. Děkuji vám za přečtení a doufám, že se příští týden uvidíme na našem blogu!

    Dostupné soubory ke stažení

    Příklady vzorců pro řazení podle data (.xlsx soubor)

    Makro automatického třídění (.xlsm soubor)

    Michael Brown je oddaný technologický nadšenec s vášní pro zjednodušování složitých procesů pomocí softwarových nástrojů. S více než desetiletými zkušenostmi v technologickém průmyslu zdokonalil své dovednosti v aplikacích Microsoft Excel a Outlook a také v Tabulkách a Dokumentech Google. Michaelův blog je věnován sdílení jeho znalostí a odborných znalostí s ostatními a poskytuje snadno pochopitelné tipy a návody pro zlepšení produktivity a efektivity. Ať už jste zkušený profesionál nebo začátečník, Michaelův blog nabízí cenné postřehy a praktické rady, jak tyto základní softwarové nástroje co nejlépe využít.