Mündəricat
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 və 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:
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
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ı)