Excel SORTBY функциясы – формуламен реттелетін сұрыптау

  • Мұны Бөлісіңіз
Michael Brown

Бүгін біз SORTBY динамикалық массивінің жаңа функциясының синтаксисі мен типтік қолданылуын мұқият қарастырамыз. Сіз Excel бағдарламасында формуламен реттелетін сұрыптауды, тізімді кездейсоқ сұрыптауды, мәтін ұзындығы бойынша ұяшықтарды реттеуді және т.б. үйренесіз.

Microsoft Excel мәтіндік деректерді алфавиттік, күндер бойынша реттеудің бірқатар жолдарын ұсынады. хронологиялық және сандар ең кішіден ең үлкенге немесе ең жоғарыдан төменге қарай. Сондай-ақ жеке тізімдер бойынша сұрыптау тәсілі бар. Кәдімгі Сұрыптау функциясына қосымша Excel 365 формулалармен деректерді сұрыптаудың жаңа әдісін ұсынады – өте ыңғайлы және пайдалану өте қарапайым!

    Excel SORTBY функциясы

    Excel бағдарламасындағы SORTBY функциясы бір ауқымды немесе массивті басқа ауқымдағы немесе массивтегі мәндер негізінде сұрыптауға арналған. Сұрыптауды бір немесе бірнеше бағандар бойынша жасауға болады.

    SORTBY — Microsoft 365 және Excel 2021 үшін Excel бағдарламасында қолжетімді алты жаңа динамикалық жиым функцияларының бірі. Оның нәтижесі көрші ұяшықтарға таралатын және автоматты түрде жаңартылатын динамикалық массив болып табылады. бастапқы деректер өзгереді.

    SORTBY функциясы дәлелдердің айнымалы санына ие - алғашқы екеуі қажет, ал екіншісі міндетті емес:

    SORTBY(массив, массив1 бойынша, [сұрыптау_тәртібі], [массив2 бойынша, сұрыптау_реті2] ,…)

    Массив (міндетті) - сұрыпталатын ұяшықтар ауқымы немесе мәндер жиымы.

    Массив1 бойынша (міндетті) - ауқым немесе жиым сұрыптаубойынша.

    Сұрыптау_тәртібі (міндетті емес) - сұрыптау реті:

    • 1 немесе түсірілген (әдепкі) - өсу
    • -1 - кему

    By_array2 / Sort_order2 , … (қосымша) - сұрыптау үшін пайдаланылатын қосымша массив/тәртібі жұптары.

    Маңызды ескерту! Қазіргі уақытта SORTBY функциясы тек Microsoft 365 жазылымдарында және Excel 2021 нұсқаларында қол жетімді. Excel 2019, Excel 2016 және бұрынғы нұсқаларында SORTBY функциясы қол жетімді емес.

    SORTBY функциясы - есте сақтау керек 4 нәрсе

    Excel SORTBY формуласы дұрыс жұмыс істеуі үшін ескеретін бірнеше маңызды нюанстар бар:

    • Жиым бойынша аргументтер бір жолдың биіктігінде немесе бір бағанның ені болуы керек.
    • массив және барлық жиым бойынша аргументтерінің үйлесімді өлшемдері болуы керек. Мысалы, екі баған бойынша сұрыптау кезінде массив , жиым1 және жиым2 бойынша жолдар саны бірдей болуы керек; әйтпесе #VALUE қатесі орын алады.
    • Егер SORTBY арқылы қайтарылған массив соңғы нәтиже болса (ұяшықтағы шығыс және басқа функцияға берілмесе), Excel динамикалық төгілу ауқымын жасайды және оны нәтижелермен толтырады. Сондықтан формуланы енгізетін ұяшықтың төмен және/немесе оң жағында жеткілікті бос ұяшықтар бар екеніне көз жеткізіңіз, әйтпесе #SPILL қатесін аласыз.
    • SORTBY формулаларының нәтижелері автоматты түрде жаңартылған сайын жаңартылады. бастапқы деректердің өзгеруі. Дегенмен, сыртында қосылған жаңа жазбалар массив сілтемесін жаңартпасаңыз, формулада сілтеме жасалған массив нәтижелерге қосылмайды. Сілтеме берілген массив автоматты түрде кеңеюі үшін бастапқы ауқымды Excel кестесіне түрлендіріңіз немесе динамикалық аталған ауқымды жасаңыз.

    Excel бағдарламасындағы негізгі SORTBY формуласы

    Міне, пайдаланудың әдеттегі сценарийі. Excel бағдарламасындағы SORTBY формуласы:

    Айлық, сізде Мән өрісі бар жобалар тізімі бар. Жобаларды мәні бойынша бөлек парақта сұрыптағыңыз келеді. Басқа пайдаланушылар сандарды көруді қажет етпейтіндіктен, нәтижелерге Мән бағанын қоспағаныңыз жөн.

    Тапсырманы SORTBY функциясы арқылы оңай орындауға болады, ол үшін сіз келесі аргументтерді келтіріңіз:

    • Массив бұл A2:A10 - нәтижелерде Мән бағанының көрсетілуін қаламасаңыз, оны қалдырасыз массивтен тыс.
    • Массив1 бойынша - B2:B10 - Мән бойынша сұрыптау.
    • Сұрыптау_тәртібі -1 - кему, яғни жоғарыдан төменге қарай.

    Аргументтерді біріктіріп, мына формуланы аламыз:

    =SORTBY(A2:B10, B2:B10, -1)

    Қарапайымдылық үшін формуланы бірдей пайдаланамыз. парақ - оны D2 ішіне енгізіп, Enter пернесін басыңыз. Нәтижелер қажетінше көптеген ұяшықтарға автоматты түрде «төгіледі» (біздің жағдайда D2:D10). Бірақ техникалық тұрғыдан формула тек бірінші ұяшықта және оны D2-ден жою барлық нәтижелерді жояды.

    Басқа парақта пайдаланылғанда, формула мынаны қабылдайдыкелесі пішін:

    =SORTBY(Sheet1!A2:A10, Sheet1!B2:B10, -1)

    Мұндағы парақ1 - бастапқы деректерді қамтитын жұмыс парағы.

    Excel бағдарламасында SORTBY функциясын пайдалану - формула мысалдары

    Төменде SORTBY пайдаланудың тағы бірнеше мысалын табасыз, бұл пайдалы және түсінікті болады деп үміттенеміз.

    Бірнеше бағандар бойынша сұрыптау

    Жоғарыда талқыланған негізгі формула деректерді бір баған бойынша сұрыптайды. Бірақ сұрыптаудың тағы бір деңгейін қосу қажет болса ше?

    Үлгі кестемізде екі өріс бар деп есептесек, Күй (В бағаны) және Мән (C бағаны) , біз алдымен Күй алфавит бойынша, содан кейін Мән кемуі бойынша сұрыптауды қалаймыз.

    Екі баған бойынша сұрыптау үшін <1-дің тағы бір жұбын қосамыз>массив бойынша / сұрыптау_тәртібі аргументтері:

    • Массив бұл A2:C10 - бұл жолы нәтижелерге барлық үш бағанды ​​қосқымыз келеді.
    • Массив бойынша1 - B2:B10 - бірінші, Күй бойынша сұрыптау.
    • Сұрыптау_тәртібі - 1 - A-дан алфавит бойынша сұрыптау Z-ге.
    • Жым_2 бойынша C2:C10 - содан кейін Мән бойынша сұрыптаңыз.
    • Сұрыптау_тәртібі -1 - ең үлкеннен кішіге қарай сұрыптау.

    Нәтижесінде біз келесі формуланы аламыз:

    =SORTBY(A2:B10, B2:B10, 1, C2:C10, -1)

    Ол деректерімізді дәл біз нұсқағандай қайта реттейді:

    Формуласы бар Excel бағдарламасында реттелетін сұрыптау

    Деректерді теңшелетін ретпен сұрыптау үшін Excel бағдарламасының Теңшелетін сұрыптау мүмкіндігін пайдалануға немесе СҰРАУ СӘЙКЕСТІК формуласын мына жолмен құрастыруға болады:

    SORTBY(массив,MATCH( сұрыптау_аралығы , арнаулы_тізім , 0))

    Деректер жинағымызды мұқият қарап шықсаңыз, жобаларды "логикалық" күйі бойынша сұрыптау ыңғайлырақ болуы мүмкін. , мысалы. алфавит бойынша емес, маңыздылығы бойынша.

    Оны орындау үшін алдымен қалаған сұрыптау ретімен реттелетін тізім жасаймыз ( Орындалуда , Аяқталған , Күтуде ) әрбір мәнді E2:E4 ауқымындағы бөлек ұяшыққа теру.

    Содан кейін жоғарыдағы жалпы формуланы пайдаланып, массив (A2) үшін бастапқы ауқымды береміз. :C10), Сұрыптау_ауқымы (B2:B10) үшін Күй бағаны және арнаулы_тізім (E2:E4) үшін жасаған теңшелетін тізім.

    =SORTBY(A2:C10, MATCH(B2:B10, E2:E4, 0))

    Нәтижесінде біз жобаларды күйі бойынша дәл қажетінше сұрыптадық:

    Теңшелетін тізім бойынша кері ретпен сұрыптау үшін, -1 мәнін қойыңыз. sort_order1 аргументі:

    =SORTBY(A2:C10, MATCH(B2:B10, E2:E4, 0), -1)

    Және қарама-қарсы бағытта сұрыпталған жобаларды аласыз:

    Әр күйдегі жазбаларды қосымша сұрыптағыңыз келе ме? Проблема жоқ. Жай, формулаға тағы бір сұрыптау деңгейін қосыңыз, айталық Мән (C2:C10) және біздің жағдайда өсу бойынша сұрыптаудың қажетті ретін анықтаңыз:

    =SORTBY(A2:C10, MATCH(B2:B10, E2:E5, 0), 1, C2:C10, 1)

    SORTBY формуласының Excel бағдарламасының Теңшелетін сұрыптау мүмкіндігіне қарағанда үлкен артықшылығы мынада: формула бастапқы деректер өзгерген сайын автоматты түрде жаңартылады, ал бұл мүмкіндік әрбір өзгеріспен тазалауды және қайта сұрыптауды қажет етеді.

    Қалай бұл формулажұмыс істейді:

    Бұдан бұрын айтылғандай, Excel бағдарламасының SORTBY функциясы өлшемдері бастапқы массивпен үйлесімді "сұрыптау" массивтерін ғана өңдей алады. Біздің бастапқы массивіміз (C2:C10) 9 жолды және реттелетін тізімде (E2:E4) тек 3 жолды қамтитындықтан, оны жиым бойынша аргументіне тікелей жеткізе алмаймыз. Оның орнына 9 жолды массив жасау үшін SATCH функциясын қолданамыз:

    MATCH(B2:B10, E2:E5, 0)

    Мұнда іздеу мәндері ретінде Күй бағанын (B2:B10) пайдаланамыз және іздеу массиві ретінде біздің реттелетін тізім (E2:E5). Нақты сәйкестіктерді іздеу үшін соңғы аргумент 0 мәніне орнатылған. Нәтижесінде біз 9 саннан тұратын массив аламыз, олардың әрқайсысы теңшелетін тізімдегі берілген Күй мәнінің салыстырмалы орнын көрсетеді:

    {1;3;2;1;3;2;2;1;2}

    Бұл массив тікелей өтеді SORTBY функциясының жиым бойынша аргументіне және оны деректерді массив элементтеріне сәйкес ретпен орналастыруға мәжбүрлейді, яғни алдымен 1-мен ұсынылған жазбалар, содан кейін 2-мен ұсынылған жазбалар және т.б.

    Формуласы бар Excel бағдарламасында кездейсоқ сұрыптау

    Excelдің бұрынғы нұсқаларында осы оқулықта түсіндірілгендей RAND функциясымен кездейсоқ сұрыптауды орындауға болады: Excel бағдарламасында тізімді кездейсоқ сұрыптау жолы.

    Жаңа Excel бағдарламасында SORTBY:

    SORTBY( массив , RANDARRAY(ROWS( массив )))

    функциясымен бірге қуаттырақ RANDARRAY функциясын пайдалана аласыз. Мұндағы массив - араластырғыңыз келетін бастапқы деректер.

    Бұл жалпы формула келесіден тұратын тізім үшін жұмыс істейді.жалғыз баған, сондай-ақ көп бағанды ​​ауқым үшін.

    Мысалы, A2:A10 форматындағы тізімді кездейсоқ сұрыптау үшін мына формуланы пайдаланыңыз:

    =SORTBY(A2:A10, RANDARRAY(ROWS(A2:A10)))

    Араластыру үшін A2:C10 деректерінде жолдарды бірге сақтау үшін мынаны пайдаланыңыз:

    =SORTBY(A2:C10, RANDARRAY(ROWS(A2:C10)))

    Бұл формула қалай жұмыс істейді:

    RANDARRAY функциясы массив шығарады сұрыптау үшін пайдаланылатын кездейсоқ сандардан тұрады және сіз оны SORTBY параметрінің жиым бойынша аргументіне жібересіз. Қанша кездейсоқ сандар генерацияланатынын көрсету үшін ROWS функциясын пайдалану арқылы бастапқы ауқымдағы жолдар санын есептейсіз және бұл санды RANDARRAY жолдар аргументіне «беріңіз». Міне!

    Ескерту. Алдыңғы нұсқасы сияқты, RANDARRAY өзгермелі функция болып табылады және жұмыс парағы қайта есептелген сайын кездейсоқ сандардың жаңа массивін жасайды. Нәтижесінде, парақтағы әрбір өзгертулермен деректеріңіз қолданылады. Автоматты түрде қайта қарауды болдырмау үшін формулаларды мәндерімен ауыстыру үшін Арнайы қою > Мәндер мүмкіндігін пайдалануға болады.

    Ұяшықтарды жол ұзындығы бойынша сұрыптау

    Ұяшықтарды құрамындағы мәтін жолдарының ұзындығы бойынша сұрыптау үшін әрбір ұяшықтағы таңбалар санын санау үшін LEN функциясын пайдаланыңыз және есептелген ұзындықтарды SORTBY параметрінің жиым бойынша аргументіне беріңіз. сұрыптау_тәртібі аргументі сұрыптаудың таңдаулы ретіне байланысты 1 немесе -1 мәніне орнатылуы мүмкін.

    Мәтін жолы бойынша ең кішіден үлкенге қарай сұрыптау үшін:

    SORTBY(массив, LEN(массив), 1)

    Сұрыптау үшінмәтін жолы үлкеннен кішіге қарай:

    SORTBY(массив, LEN(массив), -1)

    Және міне, нақты деректерде осы тәсілді көрсететін формула:

    =SORTBY(A2:A7, LEN(A2:A7), 1)

    Мұндағы A2:A7 мәтін ұзындығы бойынша өсу ретімен сұрыптағыңыз келетін бастапқы ұяшықтар:

    СҰРЫПТАУ және СҰРЫПТАУ

    Жаңа Excel динамикалық массив функциялары тобында екі бар. сұрыптауға арналған. Төменде біз ең маңызды айырмашылықтар мен ұқсастықтарды, сондай-ақ әрқайсысын қашан қолданған дұрыс екенін тізімдейміз.

    • СҰРЫПТАУ функциясынан айырмашылығы, SORTBY "сұрыптау" массивінің көздің бөлігі болуын талап етпейді. массив, сондай-ақ оның нәтижелерде көрінуі қажет емес. Сонымен, сіздің тапсырмаңыз басқа тәуелсіз массив немесе теңшелетін тізім негізінде ауқымды сұрыптау болса, SORTBY пайдалану үшін дұрыс функция болып табылады. Егер ауқымды өз мәндері негізінде сұрыптағыңыз келсе, СҰРЫПТАУ қолайлырақ.
    • Екеуі де сұрыптаудың бірнеше деңгейлерін қолдайды және екеуін де басқа динамикалық массивпен және әдеттегі функциялармен біріктіруге болады.
    • Екеуі де тек Excel 365 және Excel 2021 пайдаланушылары үшін қол жетімді.

    Excel SORTBY функциясы жұмыс істемейді

    Егер SORTBY формуласы қатені қайтарса, бұл ең алдымен мынаған байланысты болуы мүмкін. келесі себептердің бірі.

    Жиым бойынша жарамсыз аргументтер

    жиым бойынша аргументтері бір жол немесе бір баған болуы және өлшемі бойынша массив<мен үйлесімді болуы керек. 2> аргумент. Мысалы, массив -де 10 болсажолдар, жиым бойынша сонымен қатар 10 жолды қамтуы керек. Әйтпесе #VALUE! қате орын алды.

    Жарамсыз сұрыптау_тәртібі дәлелдері

    сұрыптау_тәртібі аргументтері тек 1 (өсу) немесе -1 (кему) болуы мүмкін. Ешбір мән орнатылмаса, SORTBY әдепкі бойынша өсу ретін қояды. Кез келген басқа мән орнатылса, #VALUE! қате қайтарылды.

    Нәтижелер үшін орын жеткіліксіз

    Кез келген басқа динамикалық массив функциясы сияқты, SORTBY нәтижелерді автоматты түрде өлшемі өзгертілетін және жаңартылатын ауқымға жібереді. Барлық мәндерді көрсету үшін бос ұяшықтар жеткіліксіз болса, #SPILL! қате жіберілді.

    Дереккөз жұмыс кітабы жабылды

    Егер SORTBY формуласы басқа Excel файлына сілтеме жасаса, екі жұмыс кітабы да ашық болуы керек. Егер бастапқы жұмыс кітабы жабық болса, #REF! қате орын алды.

    Excel нұсқаңыз динамикалық массивтерге қолдау көрсетпейді

    Excel бағдарламасының алдын ала динамикалық нұсқасында пайдаланылған кезде СҰРЫПТАУ функциясы #NAME қайтарады? қате.

    Таңдамалы сұрыптау және басқа әрекеттерді орындау үшін Excel бағдарламасындағы SORTBY функциясын осылай пайдалану керек. Оқығаныңыз үшін алғыс айтамын және келесі аптада блогымызда көреміз деп үміттенемін!

    Жүктеп алуға арналған жұмыс кітабы

    Excel SORTBY формулалары (.xlsx файлы)

    Майкл Браун - бағдарламалық құралдарды пайдалана отырып, күрделі процестерді жеңілдетуге құмарлығы бар арнайы технология әуесқойы. Технологиялық индустрияда он жылдан астам тәжірибесі бар ол Microsoft Excel және Outlook, сондай-ақ Google Sheets және Docs бағдарламаларында өз дағдыларын жетілдірді. Майклдың блогы өз білімі мен тәжірибесін басқалармен бөлісуге, өнімділік пен тиімділікті арттыруға арналған оңай орындалатын кеңестер мен оқулықтар беруге арналған. Сіз тәжірибелі кәсіпқой болсаңыз да, жаңадан бастаушы болсаңыз да, Майклдың блогы осы маңызды бағдарламалық құралдарды барынша пайдалану үшін құнды түсініктер мен практикалық кеңестер ұсынады.