Як сартаваць па даце ў Excel: храналагічна, па месяцах, аўтасарціроўка

  • Падзяліцца Гэтым
Michael Brown

У гэтым артыкуле мы разгледзім розныя спосабы сартавання дат у Excel. Вы даведаецеся, як хутка арганізаваць даты ў храналагічным парадку, сартаваць па месяцах, ігнаруючы гады, сартаваць дні нараджэння па месяцах і днях і як аўтаматычна сартаваць па даце пры ўводзе новых значэнняў.

Убудаваны Excel параметры сартавання - магутныя і эфектыўныя інструменты, але яны не заўсёды працуюць правільна, калі справа даходзіць да сартавання дат. Гэты падручнік навучыць вас некалькім карысным прыёмам, каб упарадкаваць Excel па датах значным чынам, не сапсаваўшы вашыя дадзеныя.

    Як сартаваць даты ў храналагічным парадку

    Упарадкаванне даты ў храналагічным парадку ў Excel вельмі лёгка. Вы проста выкарыстоўваеце стандартную опцыю Сартаванне па ўзрастанні :

    1. Выберыце даты, якія вы хочаце сартаваць у храналагічным парадку.
    2. На ўкладцы Галоўная у групе Фарматы націсніце Сартаваць & Адфільтруйце і абярыце Сартаваць ад старых да самых новых . Акрамя таго, вы можаце выкарыстоўваць опцыю А-Я на ўкладцы Даныя ва ўкладцы Сартаваць & Група фільтраў .

    Як сартаваць па даце ў Excel

    Параметры сартавання Excel таксама можна выкарыстоўваць для пераўпарадкавання цэлая табліца, а не адзін слупок. Для сартавання запісаў па даце, захоўваючы радкі некранутымі, ключавым момантам з'яўляецца пашырэнне выбару, калі з'явіцца запыт.

    Вось падрабязныя крокі па сартаванні даных у Excel па даце:

    1. У вашай электроннай табліцы, выберыце даты без слупказагаловак.
    2. На ўкладцы Галоўная націсніце Сартаваць & Адфільтруйце і абярыце Сартаваць ад старых да самых новых .

    3. З'явіцца дыялогавае акно Папярэджанне аб сартаванні . Пакіньце выбранай опцыю Пашырыць выбар і націсніце Сартаваць :

    Вось і ўсё! Запісы былі адсартаваны па даце, і ўсе радкі захоўваюцца разам:

    Як сартаваць па месяцах у Excel

    Можа быць час, калі вы пажадаеце каб сартаваць даты па месяцах ігнаруючы год, напрыклад, калі групуеце даты гадавін вашых калегаў ці сваякоў. У гэтым выпадку функцыя сартавання Excel па змаўчанні не будзе працаваць, таму што яна заўсёды ўлічвае год, нават калі вашы ячэйкі адфарматаваны для адлюстравання толькі месяца або месяца і дня.

    Рашэнне складаецца ў тым, каб дадаць дапаможны слупок. , атрымаць нумар месяца і адсартаваць па гэтым слупку. Каб атрымаць месяц ад даты, выкарыстоўвайце функцыю MONTH.

    На скрыншоце ніжэй мы здабываем нумар месяца з даты ў B2 з дапамогай гэтай формулы:

    =MONTH(B2)

    Савет. Калі вынік адлюстроўваецца як дата, а не лік, усталюйце фармат Агульны для вочак формулы.

    А цяпер адсартуйце табліцу па слупку Месяц . Для гэтага абярыце нумары месяцаў (C2:C8), націсніце Сартаваць & Фільтр > Сартаванне ад найменшага да самага вялікага , а затым разгарніце выбар, калі Excel папросіць вас зрабіць гэта. Калі ўсё зроблена правільна, вы атрымаеце наступнаевынік:

    Калі ласка, звярніце ўвагу, што нашы даныя цяпер адсартаваны па месяцах без уліку гадоў і дзён у кожным месяцы. Калі вы жадаеце сартаваць па месяцах і днях , то выконвайце інструкцыі з наступнага прыкладу.

    Калі назвы месяцаў уводзяцца ў выглядзе тэксту , то сартуйце карыстальніцкім спісам, як тлумачыцца ў гэтым прыкладзе.

    Як сартаваць дні нараджэння ў Excel па месяцах і днях

    Пры размяшчэнні дат для календара дзён нараджэння аптымальным рашэннем будзе сартаваць даты па месяцах і дзень. Такім чынам, вам патрэбна формула, якая выцягвала б месяцы і дні з дат нараджэння.

    У гэтым выпадку спатрэбіцца функцыя Excel TEXT, якая можа пераўтварыць дату ў тэкставы радок у вызначаным фармаце. . Для нашых мэтаў будзе працаваць код фармату "mmdd" або "mm.dd".

    З зыходнай датай у B2 формула прымае наступны выгляд:

    =TEXT(B2, "mm.dd")

    Далей адсартуйце слупок Месяц і дзень ад вялікага да меншага, і вы атрымаеце дадзеныя ў парадку дзён кожнага месяца.

    Таго ж выніку можна дасягнуць, выкарыстоўваючы наступную формулу ДАТА:

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

    Формула стварае спіс дат шляхам вылучэння месяца і дня з фактычнай даты ў B2 і замены рэальны год з фальшывым, 2000 у гэтым прыкладзе, хоць вы можаце паставіць любы. Ідэя заключаецца ў тым, каб мець адзін і той жа год для ўсіх дат, а затым адсартаваць спіс дат у храналагічным парадку.Паколькі год аднолькавы, даты будуць адсартаваны па месяцах і днях, і гэта менавіта тое, што вы шукаеце.

    Як сартаваць даныя па гадах у Excel

    Калі справа даходзіць да пры сартаванні па гадах прасцей за ўсё размясціць даты ў храналагічным парадку з дапамогай параметра Excel па ўзрастанні ( ад старых да самых новых ).

    Гэта адсартуе даты па гадах, потым па месяцах, а потым па днях, як паказана на скрыншоце ніжэй.

    Калі па нейкай прычыне вас не задавальняе такое размяшчэнне, вы можаце дадаць дапаможны слупок з формулай YEAR, якая здабывае год з даты:

    =YEAR(C2)

    Пасля сартавання даных па слупку Год вы заўважыце, што даты адсартаваныя толькі па годзе, ігнаруючы месяцы і дні .

    Падказка. Калі вы жадаеце адсартаваць даты па днях без уліку месяцаў і гадоў, вылучыце дзень з дапамогай функцыі DAY, а затым адсартуйце па слупку Дзень :

    =DAY(B2)

    Як сартаваць па днях тыдня ў Excel

    Каб сартаваць даныя па днях тыдня, вам таксама спатрэбіцца дапаможны слупок, як у папярэдніх прыкладах. У гэтым выпадку мы будзем запаўняць дапаможны слупок формулай WEEKDAY, якая вяртае лік, які адпавядае дню тыдня, а потым сартаваць па дапаможным слупку.

    Для тыдня, які пачынаецца з нядзелі (1 ) па суботу (7), гэта формула для выкарыстання:

    =WEEKDAY(A2)

    Калі ваш тыдзень пачынаецца з панядзелка (1) па нядзелю(7), вось правільны:

    =WEEKDAY(A2, 2)

    Дзе A2 — ячэйка, якая змяшчае дату.

    У гэтым прыкладзе мы выкарысталі першую формулу і атрымалі гэта вынік:

    Калі назвы дзён тыдня ўводзяцца ў выглядзе тэксту , а не ў выглядзе дат, выкарыстоўвайце функцыю індывідуальнага сартавання, як тлумачыцца ў наступным прыкладзе.

    Як сартаваць даныя ў Excel па назвах месяцаў (ці дзён тыдня)

    Калі ў вас ёсць спіс назваў месяцаў у выглядзе тэксту , а не ў выглядзе дат, адфарматаваных для адлюстравання толькі месяцы, прымяненне сартавання Excel па ўзрастанні можа быць праблемай - ён будзе размяшчаць назвы месяцаў у алфавітным парадку замест сартавання па месяцах са студзеня па снежань. У гэтым выпадку дапаможа спецыяльная сартоўка:

    1. Выберыце запісы, якія вы хочаце сартаваць па назве месяца.
    2. На ўкладцы Даныя у Сартаваць & У групе Filter націсніце Sort .
    3. У дыялогавым акне Sort зрабіце наступнае:
      • Under Column >, абярыце назву слупка, які змяшчае назвы месяцаў.
      • У раздзеле Сартаваць па выберыце Значэнні вочак .
      • У раздзеле Заказ , выберыце Карыстальніцкі спіс .
    4. У дыялогавым акне Карыстальніцкія спісы выберыце альбо поўныя назвы месяцаў ( студзень , люты , сакавік , …), альбо кароткія назвы ( студзень , люты , сакавік …) у залежнасці ад таго, як месяцы пералічаны ў вашым працоўным аркушы:

  • Двойчы націсніце OK, каб закрыць абодва дыялогавыя акныскрынкі.
  • Гатова! Вашы даныя былі адсартаваны па назвах месяцаў у храналагічным парадку, а не ў алфавітным парадку:

    Падказка. Для сартавання па назвах дзён тыдня выберыце або поўныя назвы ( нядзеля , панядзелак , аўторак , …) або кароткія назвы ( Нд , Пн , Вт …) у дыялогавым акне Карыстальніцкія спісы .

    Як аўтаматычна сартаваць па даце ў Excel

    Як вы бачылі, функцыя Excel Sort спраўляецца з рознымі праблемамі. Адзіны недахоп - гэта недынамічнасць. Гэта азначае, што вам давядзецца сартаваць дадзеныя з кожным змяненнем і кожны раз, калі дадаецца новая інфармацыя. Магчыма, вы задаецца пытаннем, ці існуе спосаб аўтаматычнага сартавання кожны раз, калі дадаецца новая дата, каб вашы дадзеныя заўсёды былі ў парадку.

    Лепшы спосаб зрабіць гэта з дапамогай макраса. Ніжэй вы знойдзеце пару прыкладаў кода для аўтаматычнага сартавання наступных даных па даце ў храналагічным парадку.

    Макрас 1: Аўтаматычнае сартаванне пры кожнай змене аркуша

    Гэты макрас выконваецца кожны раз, калі адбываецца змяненне дзе-небудзь на аркушы.

    Мяркуецца, што вашы даныя знаходзяцца ў слупках ад A да C, а даты, па якіх вы хочаце адсартаваць, знаходзяцца ў слупку C, пачынаючы з C2. Мяркуецца таксама, што радок 1 змяшчае загалоўкі (Header:=xlYes). Калі вашы запісы знаходзяцца ў розных слупках, унясіце наступныя карэктывы:

    • Змяніце спасылку A1 на левую верхнюю ячэйку вашагамэтавы дыяпазон (уключаючы загалоўкі).
    • Змяніце спасылку C2 на самую верхнюю ячэйку, якая змяшчае дату.
    Прыватны дадатковы працоўны ліст_Change( ByVal Target As Range) Пры памылцы Аднаўленне наступнага дыяпазону( "A1" ) .Sort Key1:=Range( "C2"), _ Order1:=xlAscending, Header:=xlYes, _ OrderCustom:=1, MatchCase:= False, _ Orientation:=xlTopToBottom End Sub

    Macro 2: Аўтаматычнае сартаванне, калі змены ўносяцца ў пэўны дыяпазон

    Калі вы працуеце з вялізным аркушам, які змяшчае шмат інфармацыі, перасарціроўка з абсалютна любымі зменамі ў аркушы можа выклікаць клопаты. У гэтым выпадку мае сэнс абмежаваць спрацоўванне макраса зменамі, якія адбываюцца ў пэўным дыяпазоне. Наступны код VBA сартуе даныя толькі тады, калі змяненне зроблена ў слупку C, які змяшчае даты.

    Private Sub Worksheet_Change( ByVal Target As Range) On Error Resume Next If Not Intersect(Target, Range( "C:C" )) Нічога, то Range( "A1" ).Sort Key1:=Range( "C2" ), _ Order1:=xlAscending, Header:=xlYes, _ OrderCustom:=1, MatchCase:= False , _ Orientation:=xlTopToBottom End If End Sub

    Савет. Гэтыя макрасы можна выкарыстоўваць для аўтаматычнага сартавання па любому тыпу даных , а не толькі па датах. Нашы ўзоры кодаў сартуюцца ў парадку ўзрастання. Калі вы хочаце сартаваць па змяншэнні , змяніце Order1:=xlAscending на Order1:=xlDescending.

    Як дадаць макрас на ваш працоўны ліст

    Паколькі абодва макрасы запускаюцца аўтаматычна пры змене працоўнага аркуша,код павінен быць устаўлены ў ліст, дзе вы хочаце сартаваць даныя (у гэтым прыкладзе Sheet1). Вось як:

    1. Націсніце Alt + F11, каб адкрыць рэдактар ​​VBA.
    2. У Правадыры праектаў злева двойчы пстрыкніце аркуш, дзе вы хочаце аўтаматычнае сартаванне.
    3. Устаўце код у акно кода.

    Аўтаматычнае сартаванне дат па формуле

    Выкажам здагадку, што ў вас ёсць спіс дат, і вы хочаце, каб яны былі аўтаматычна размешчаны ў храналагічным парадку ў асобным слупку, побач з зыходным спісам. Гэта можна зрабіць з дапамогай наступнай формулы масіва:

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

    Дзе A2:A20 зыходныя (несартаваныя) даты, уключаючы некалькі пустых вочак для магчымых новых запісаў.

    Увядзіце формулу ў пустую ячэйку побач са слупком з зыходнымі датамі (у гэтым прыкладзе C2) і адначасова націсніце клавішы Ctrl + Shift + Enter, каб завяршыць яе. Затым перацягніце формулу ўніз да астатніх вочак (у нашым выпадку C2:C20).

    Падказка. Каб новыя дададзеныя даты сартаваліся аўтаматычна, пераканайцеся, што вы ўключылі дастатковую колькасць пустых вочак у адпаведны дыяпазон. Напрыклад, наш спіс дат знаходзіцца ў дыяпазоне A2:A7, але мы дадаем $A$2:$A$20 у формулу і запаўняем яе ў ячэйкі з C2 па C20. Функцыя IFERROR прадухіляе памылкі ў дадатковых ячэйках, вяртаючы пусты радок ("") замест гэтага.

    Сартаванне па даце ў Excel не працуе

    Калі вашы даты адсартаваны не так, як яныпавінны, хутчэй за ўсё, яны ўводзяцца ў фармаце, які Excel не разумее, таму яны ўспрымаюцца як тэкставыя радкі, а не даты. Наступны падручнік тлумачыць, як адрозніць так званыя "тэкставыя даты" і пераўтварыць іх у звычайныя даты Excel: Як пераўтварыць тэкст у дату ў Excel.

    Гэта тое, як сартаваць па даце ў Excel. Я дзякую вам за чытанне і спадзяюся ўбачыць вас у нашым блогу на наступным тыдні!

    Даступныя спампоўкі

    Сартаваць па даце, прыклады формул (.xlsx файл)

    Макрас аўтаматычнага сартавання ( файл .xlsm)

    Майкл Браўн - адданы энтузіяст тэхналогій, які любіць спрашчэнне складаных працэсаў з дапамогай праграмных інструментаў. Маючы больш чым дзесяцігадовы досвед працы ў індустрыі тэхналогій, ён удасканальваў свае навыкі ў Microsoft Excel і Outlook, а таксама ў Google Sheets і Docs. Блог Майкла прысвечаны таму, каб падзяліцца сваімі ведамі і вопытам з іншымі, даючы простыя ў выкананні парады і падручнікі для павышэння прадукцыйнасці і эфектыўнасці. Незалежна ад таго, з'яўляецеся вы дасведчаным прафесіяналам або пачаткоўцам, блог Майкла прапануе каштоўную інфармацыю і практычныя парады, каб атрымаць максімальную аддачу ад гэтых неабходных праграмных інструментаў.