Excel SORTBY funksiyası - formula ilə fərdi çeşidləmə

  • Bunu Paylaş
Michael Brown

Bu gün biz SORTBY yeni dinamik massiv funksiyasının sintaksisi və tipik istifadələrinə yaxından nəzər salacağıq. Siz Excel-də düsturla fərdi çeşidləmə, siyahını təsadüfi çeşidləmə, xanaları mətn uzunluğuna görə yerləşdirməyi və s. öyrənəcəksiniz.

Microsoft Excel mətn məlumatlarını əlifba, tarixlər sırası ilə tənzimləmək üçün bir sıra yollar təqdim edir. xronoloji və ədədlər kiçikdən böyüyə və ya ən yüksəkdən kiçiyə. Öz xüsusi siyahılarınıza görə çeşidləmənin bir yolu da var. Ənənəvi Çeşidləmə funksiyasına əlavə olaraq, Excel 365 düsturlarla məlumatları çeşidləmək üçün tamamilə yeni üsul təqdim edir - çox rahat və istifadəsi inanılmaz dərəcədə sadədir!

    Excel SORTBY funksiyası

    Excel-də SORTBY funksiyası bir diapazonu və ya massivi başqa diapazonda və ya massivdəki dəyərlər əsasında çeşidləmək üçün nəzərdə tutulmuşdur. Çeşidləmə bir və ya bir neçə sütun üzrə edilə bilər.

    SORTBY Microsoft 365 və Excel 2021 üçün Excel-də mövcud olan altı yeni dinamik massiv funksiyasından biridir. Onun nəticəsi qonşu hüceyrələrə yayılan və avtomatik olaraq yenilənən dinamik massivdir. mənbə datası dəyişir.

    SORTBY funksiyasının dəyişən sayda arqumentləri var - ilk ikisi tələb olunur, digəri isə isteğe bağlıdır:

    SORTBY(massiv, massiv1, [sort_order1], [sisilə2, sıralama_sifarişi2] ,…)

    Masiv (tələb olunur) - çeşidlənəcək xanalar və ya dəyərlər massivi.

    By_array1 (tələb olunur) - diapazon və ya massiv Çeşidləməkby.

    Sort_order1 (istəyə bağlı) - çeşidləmə sırası:

    • 1 və ya buraxılmış (defolt) - artan
    • -1 - azalan

    By_array2 / Sort_order2 , … (istəyə bağlı) - çeşidləmə üçün istifadə ediləcək əlavə massiv/sifariş cütləri.

    Vacib qeyd! Hazırda SORTBY funksiyası yalnız Microsoft 365 abunəlikləri və Excel 2021 ilə əlçatandır. Excel 2019, Excel 2016 və əvvəlki versiyalarda SORTBY funksiyası mövcud deyil.

    SORTBY funksiyası - yadda saxlanmalı 4 şey

    Excel SORTBY düsturunun düzgün işləməsi üçün nəzərə alınmalı bir neçə vacib məqam var:

    • By_array arqumentləri ya bir sıra yüksək, ya da bir sütun enində olmalıdır.
    • massiv və bütün array arqumentləri uyğun ölçülərə malik olmalıdır. Məsələn, iki sütun üzrə çeşidlənərkən, massiv , array1 array2 eyni sayda sətirə malik olmalıdır; əks halda #VALUE xətası baş verəcək.
    • SORTBY tərəfindən qaytarılan massiv yekun nəticədirsə (xanadakı çıxış və başqa funksiyaya ötürülməyibsə), Excel dinamik yayılma diapazonu yaradır və onu nəticələrlə doldurur. Beləliklə, düsturu daxil etdiyiniz xananın aşağısında və/və ya sağında kifayət qədər boş xanaların olduğundan əmin olun, əks halda #SPILL xətası alacaqsınız.
    • SORTBY düsturlarının nəticələri avtomatik olaraq yenilənir. mənbə məlumatları dəyişir. Ancaq xaricində yeni qeydlər əlavə edilir massiv istinadını yeniləməyincə, formulada istinad edilən massiv nəticələrə daxil edilmir. İstinad edilən massivin avtomatik olaraq genişlənməsi üçün mənbə diapazonunu Excel cədvəlinə çevirin və ya dinamik adlandırılmış diapazon yaradın.

    Excel-də əsas SORTBY düsturu

    Budur, istifadənin tipik ssenarisi Excel-də SORTBY düsturu:

    Fərz edək ki, sizdə Dəyər sahəsi olan layihələrin siyahısı var. Siz layihələri dəyərinə görə ayrı vərəqdə çeşidləmək istəyirsiniz. Digər istifadəçilərin rəqəmləri görməsinə ehtiyac olmadığı üçün nəticələrə Dəyər sütununu daxil etməməyi üstün tutursunuz.

    Tapşırığı SORTBY funksiyası ilə asanlıqla yerinə yetirmək olar. aşağıdakı arqumentləri təmin edin:

    • Masiv A2:A10-dur - nəticələrdə Dəyər sütununun göstərilməsini istəmədiyiniz üçün onu tərk edirsiniz massivdən kənar.
    • By_array1 B2:B10 - Dəyər üzrə çeşidləyin.
    • Sort_order1 -1 - azalan, yəni ən yüksəkdən aşağıya doğru.

    Arqumentləri bir araya gətirərək bu düsturu alırıq:

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

    Sadəlik üçün eyni düsturdan istifadə edirik. vərəq - onu D2-ə daxil edin və Enter düyməsini basın. Nəticələr lazım olduğu qədər hüceyrəyə avtomatik olaraq "tökülür" (bizim vəziyyətimizdə D2:D10). Amma texniki cəhətdən formula yalnız birinci xanadadır və onu D2-dən silmək bütün nəticələri siləcək.

    Başqa vərəqdə istifadə edildikdə, düstur qəbul ediraşağıdakı forma:

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

    Burada Cədvəl1 orijinal məlumatları ehtiva edən iş vərəqidir.

    Excel-də SORTBY funksiyasından istifadə - düstur nümunələri

    Aşağıda SORTBY istifadəsinə dair daha bir neçə nümunə tapa bilərsiniz ki, bu da inşallah faydalı və dərrakəli olacaq.

    Birdən çox sütun üzrə çeşidləyin

    Yuxarıda müzakirə edilən əsas düstur məlumatları bir sütun üzrə çeşidləyir. Bəs siz daha bir səviyyəli çeşidləmə əlavə etməlisinizsə?

    Nümunə cədvəlimizin iki sahəsi olduğunu fərz etsək, Status (sütun B) və Dəyər (sütun C) , biz əvvəlcə Status əlifba sırası ilə, sonra isə Dəyər azalma üzrə çeşidləmək istəyirik.

    İki sütuna görə çeşidləmək üçün sadəcə olaraq <1 cütünün daha bir cütünü əlavə edirik>array_array / sort_order arqumentləri:

    • Array A2:C10 - bu dəfə biz hər üç sütunu nəticələrə daxil etmək istəyirik.
    • By_array1 B2:B10 - birinci, Status ilə çeşidləyin.
    • Sort_order1 1 - A-dan əlifba sırası ilə çeşidləyin Z-ə.
    • By_array2 C2:C10 - sonra, Dəyər ilə çeşidləyin.
    • Sort_order2 -1 - ən böyüydən kiçiyə doğru çeşidləyin.

    Nəticədə aşağıdakı düsturu əldə edirik:

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

    Bu, verilənlərimizi tam olaraq göstəriş verdiyimiz kimi yenidən təşkil edir:

    Düsturla Excel-də fərdi çeşidləmə

    Məlumatları fərdi qaydada çeşidləmək üçün siz Excel-in Xüsusi Çeşidləmə funksiyasından istifadə edə və ya SORTBY MATCH formulunu bu şəkildə qura bilərsiniz:

    SORTBY(massiv,MATCH( çeşidləmə_aralığı , xüsusi_siyahı , 0))

    Məlumat dəstimizə daha yaxından nəzər saldıqda, yəqin ki, layihələri "məntiqi" statusuna görə çeşidləmək daha rahat olacaq. , məs. əlifba sırası ilə deyil, əhəmiyyətinə görə.

    Bunu yerinə yetirmək üçün əvvəlcə istədiyiniz çeşidləmə qaydasında fərdi siyahı yaradırıq ( Davam edir , Tamamlandı , Gözləmədə ) hər bir dəyəri E2:E4 diapazonunda ayrıca xanaya yazırıq.

    Və sonra yuxarıdakı ümumi düsturdan istifadə edərək, massiv (A2) üçün mənbə diapazonunu təqdim edirik. :C10), Sort_aralıq (B2:B10) üçün Status sütunu və xüsusi_siyahı (E2:E4) üçün yaratdığımız fərdi siyahı.

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

    Nəticədə, biz layihələri statuslarına görə tam olaraq lazım olduğu kimi çeşidləmişik:

    Fərdi siyahıya görə tərs qaydada çeşidləmək üçün -1 qoyun sort_order1 arqumenti:

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

    Və siz layihələri əks istiqamətdə çeşidləyəcəksiniz:

    Hər bir status daxilində qeydləri əlavə olaraq çeşidləmək istəyirsiniz? Problem deyil. Sadəcə olaraq, düstura daha bir çeşidləmə səviyyəsi əlavə edin, deyək ki, Dəyər (C2:C10) və bizim vəziyyətimizdə artan, istədiyiniz çeşidləmə ardıcıllığını təyin edin:

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

    SORTBY düsturunun Excel-in Fərdi Çeşidləmə funksiyası ilə müqayisədə böyük üstünlüyü ondan ibarətdir ki, düstur hər dəfə orijinal məlumat dəyişdikdə avtomatik olaraq yenilənir, xüsusiyyət isə hər dəyişikliklə təmizləmə və yenidən çeşidləmə tələb edir.

    Necə olur. bu formulaişləyir:

    Daha əvvəl qeyd edildiyi kimi, Excel-in SORTBY funksiyası yalnız ölçüləri mənbə massivi ilə uyğun gələn "çeşidləmə" massivlərini emal edə bilər. Mənbə massivimiz (C2:C10) 9 sətir və fərdi siyahı (E2:E4) yalnız 3 sətirdən ibarət olduğundan, biz onu birbaşa by_array arqumentinə təqdim edə bilmərik. Bunun əvəzinə biz 9 sıralı massiv yaratmaq üçün MATCH funksiyasından istifadə edirik:

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

    Burada axtarış dəyərləri kimi Status sütunundan (B2:B10) istifadə edirik və xüsusi siyahımızı (E2:E5) axtarış massivi kimi. Dəqiq uyğunluqları axtarmaq üçün sonuncu arqument 0-a təyin edilmişdir. Nəticədə, hər biri xüsusi siyahıda verilmiş Status dəyərinin nisbi mövqeyini təmsil edən 9 ədəddən ibarət massiv alırıq:

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

    Bu massiv birbaşa gedir SORTBY funksiyasının by_array arqumentinə çevirir və onu məlumatları massivin elementlərinə uyğun gələn ardıcıllıqla yerləşdirməyə məcbur edir, yəni əvvəlcə 1-lə, sonra 2-lə təmsil olunan yazılar və s.

    Düsturla Excel-də təsadüfi çeşidləmə

    Əvvəlki Excel versiyalarında siz bu təlimatda izah edildiyi kimi RAND funksiyası ilə təsadüfi çeşidləmə edə bilərsiniz: Excel-də siyahını təsadüfi şəkildə necə çeşidləmək olar.

    Yeni Excel-də SORTBY ilə birlikdə daha güclü RANDARRAY funksiyasından istifadə edə bilərsiniz:

    SORTBY( array , RANDARRAY(ROWS( massiv )))

    Burada massiv qarışdırmaq istədiyiniz mənbə datasıdır.

    Bu ümumi düstur aşağıdakılardan ibarət siyahı üçün işləyir.tək sütun, eləcə də çox sütunlu diapazon üçün.

    Məsələn, A2:A10-da siyahını təsadüfi çeşidləmək üçün bu düsturdan istifadə edin:

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

    Qarışdırmaq üçün A2:C10-da sətirləri bir yerdə saxlayaraq, bundan istifadə edin:

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

    Bu düstur necə işləyir:

    RANDARRAY funksiyası massiv yaradır çeşidləmə üçün istifadə ediləcək təsadüfi ədədlərdən ibarətdir və siz onu SORTBY-nin by_array arqumentinə keçirsiniz. Neçə təsadüfi ədədin yaradılacağını müəyyən etmək üçün siz ROWS funksiyasından istifadə edərək mənbə diapazonunda sətirlərin sayını hesablayırsınız və həmin rəqəmi RANDARRAY-in sətirlər arqumentinə "yedirirsiniz". Budur!

    Qeyd. Sələfi kimi, RANDARRAY da dəyişkən funksiyadır və hər dəfə iş vərəqi yenidən hesablananda yeni təsadüfi ədədlər massivi yaradır. Nəticədə, vərəqdəki hər dəyişikliklə məlumatlarınıza müraciət ediləcək. Avtomatik müraciətin qarşısını almaq üçün siz Xüsusi Yerləşdirin > Dəyərlər funksiyasından istifadə edərək düsturları onların dəyərləri ilə əvəz edə bilərsiniz.

    Xaları sətir uzunluğuna görə çeşidləyin

    Hüceyrələri tərkibindəki mətn sətirlərinin uzunluğuna görə çeşidləmək üçün hər bir xanadakı simvolların sayını hesablamaq üçün LEN funksiyasından istifadə edin və hesablanmış uzunluqları SORTBY-nin array_arqumentinə görə təmin edin. sort_order arqumenti üstünlük verilən çeşidləmə ardıcıllığından asılı olaraq 1 və ya -1-ə təyin edilə bilər.

    Mətn sətirinə görə ən kiçikdən böyüyə doğru çeşidləmək üçün:

    SORTBY(massiv, LEN(massiv), 1)

    Sərtləmək üçünmətn sətri böyükdən kiçiyə:

    SORTBY(massiv, LEN(massiv), -1)

    Və burada real məlumatda bu yanaşmanı nümayiş etdirən düstur var:

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

    Burada A2:A7 artan qaydada mətn uzunluğuna görə çeşidləmək istədiyiniz orijinal xanalardır:

    SORTBY vs. SORT

    Yeni Excel dinamik massiv funksiyaları qrupunda iki var çeşidləmək üçün nəzərdə tutulmuşdur. Aşağıda biz ən əsas fərqləri və oxşarlıqları, eləcə də hər birinin istifadə edilməsinin ən yaxşı vaxtını sadalayırıq.

    • SORT funksiyasından fərqli olaraq, SORTBY "sort by" massivinin mənbənin bir hissəsi olmasını tələb etmir. massivdir və onun nəticələrdə görünməsinə ehtiyac yoxdur. Beləliklə, vəzifəniz başqa bir müstəqil massiv və ya fərdi siyahı əsasında diapazonu çeşidləmək olduqda, SORTBY istifadə etmək üçün düzgün funksiyadır. Əgər diapazonu öz dəyərlərinə əsaslanaraq çeşidləmək istəyirsinizsə, SORT daha uyğundur.
    • Hər iki funksiya çox sayda çeşidləməni dəstəkləyir və hər ikisi digər dinamik massiv və adi funksiyalarla birlikdə zəncirlənə bilər.
    • Hər iki funksiya yalnız Excel 365 və Excel 2021 istifadəçiləri üçün əlçatandır.

    Excel SORTBY funksiyası işləmir

    SORTBY düsturunuz xəta qaytararsa, bunun səbəbi çox güman ki, aşağıdakı səbəblərdən biridir.

    Etibarsız_massiv arqumentləri

    array_arqumentləri arqumentləri tək sətir və ya tək sütun olmalı və ölçüsünə görə massiv arqument. Məsələn, massiv -də 10 olarsasətirlər, array_array də 10 sətirdən ibarət olmalıdır. Əks halda #VALUE! xəta baş verir.

    Yanlış sıralama arqumentləri

    sort_order arqumentləri yalnız 1 (artan) və ya -1 (azalan) ola bilər. Heç bir dəyər təyin edilməyibsə, SORTBY defolt olaraq artan sıraya keçir. Hər hansı başqa dəyər təyin edilibsə, #VALUE! xəta qaytarılır.

    Nəticələr üçün kifayət qədər yer yoxdur

    Hər hansı digər dinamik massiv funksiyası kimi, SORTBY nəticələri avtomatik olaraq ölçüsünü dəyişdirilə bilən və yenilənə bilən diapazona yayır. Bütün dəyərləri göstərmək üçün kifayət qədər boş xanalar yoxdursa, #DAĞMA! xəta baş verdi.

    Mənbə iş kitabı bağlandı

    Əgər SORTBY düsturu başqa Excel faylına istinad edirsə, hər iki iş kitabı açıq olmalıdır. Mənbə iş kitabı bağlanıbsa, #REF! xəta baş verir.

    Excel versiyanız dinamik massivləri dəstəkləmir

    Excel'in dinamik öncəki versiyasında istifadə edildikdə, SORT funksiyası #NAME qaytarır? xəta.

    Xüsusi çeşidləmə və başqa şeylər etmək üçün Excel-də SORTBY funksiyasından belə istifadə etmək olar. Oxuduğunuz üçün sizə təşəkkür edirəm və sizi gələn həftə bloqumuzda görməyə ümid edirəm!

    Endirmək üçün məşq kitabı

    Excel SORTBY düsturları (.xlsx faylı)

    Michael Brown proqram alətlərindən istifadə edərək mürəkkəb prosesləri sadələşdirməyə həvəsi olan xüsusi texnologiya həvəskarıdır. Texnologiya sənayesində on ildən artıq təcrübəyə malik olmaqla, o, Microsoft Excel və Outlook, həmçinin Google Cədvəl və Sənədlərdə bacarıqlarını mükəmməlləşdirib. Mayklın bloqu öz biliyini və təcrübəsini başqaları ilə bölüşməyə, məhsuldarlığı və səmərəliliyi artırmaq üçün asan izlənilən məsləhətlər və dərslikləri təqdim etməyə həsr olunub. İstər təcrübəli peşəkar, istərsə də yeni başlayan biri olmağınızdan asılı olmayaraq, Mayklın bloqu bu vacib proqram alətlərindən maksimum yararlanmaq üçün dəyərli fikirlər və praktiki məsləhətlər təklif edir.