Формула на Excel: Сортиране по персонализиран списък -

Обща формула

=SORTBY(rng,MATCH(rng,custom,0))

Обобщение

За да сортирате списък в персонализиран ред, можете да комбинирате функцията SORTBY с функцията MATCH. В показания пример таблицата се сортира от колоната "група", като се използва в реда, показан в клетките J5: J7. Формулата в D5 е:

=SORTBY(B5:D14,MATCH(D5:D14,custom,0))

където "по поръчка" е наименуваният диапазон J5: J7, който определя желания ред на сортиране.

Обяснение

В този пример сортираме таблица с 10 реда и 3 колони. В диапазона J5: J7 (посоченият диапазон „по поръчка“) цветовете „червен“, „син“ и „зелен“ са изброени в желания ред на сортиране. Целта е да се сортира таблицата, като се използват стойности в колоната Group в същия този персонализиран ред.

Функцията SORTBY позволява сортиране въз основа на един или повече масиви "сортиране по", стига размерите да са съвместими с данните източник. В този случай не можем да използваме именувания диапазон „по поръчка“ директно в SORTBY, защото той съдържа само 3 реда, докато таблицата съдържа 10 реда.

За да създадем масив с 10 реда, който може да се използва като масив „сортиране по“, можем да използваме функцията MATCH по следния начин:

MATCH(D5:D14,custom,0)

Забележете, че предаваме стойностите на групата в D5: D14 като справочни стойности и използваме "потребителски" като справочна таблица. Резултатът е масив като този:

(2;1;3;3;2;3;1;2;3;1)

Всяка стойност в масива представлява числовата позиция на дадена стойност на групата в „по поръчка“, така че има 10 представени реда. Този масив се предава във функцията SORTBY като аргумент by_array1. SORTBY сортира таблицата в реда "червено", "синьо", "зелено" и връща резултата като диапазон на разливане, започващ в клетка D5.

Интересни статии...