Как автоматически сгенерировать ранжирование/сортировку ячеек в LibreOffice Calc?

Как автоматически сгенерировать ранжирование/сортировку ячеек в LibreOffice Calc?

Например, у меня есть таблица с заголовком и некоторыми числовыми данными, такими как:

Mary | Sue | Mike
-----------------
 100 | 20  | 30 
-----------------

Я хочу создать рейтинг, т.е.

1. Mary
2. Mike
3. Sue

Есть ли способ сделать это автоматически? Автоматически, то есть не использовать «Данные > Сортировка» вручную каждый раз, когда имеющиеся числа пересчитываются.

Я знаю о функции RANK, это обратная тому, что мне нужно (RANK дает вам ранг данных, мне нужны данные ранга).

решение1

ПримерДа, есть способ сделать это автоматически. Он использует RANK дважды (один раз для сортировки и второй раз для обработки повторяющихся значений).

В примере показано 2 способа сделать это без макросов;

sheet1 использует RANK, COUNTIF и VLOOKUP (рекомендуется) sheet2 использует HLOOKUP, VLOOKUP, COUNTIF, MAX и MIN

решение2

Предполагая, что данные находятся в верхнем левом углу вашей электронной таблицы, выполните следующие действия в столбце B5 после настройки столбцов {A5, A6, A7} = {1, 2, 3}:

=INDEX($A$1:$C$1, MATCH(LARGE($A$2:$C$2, A5),  $A$2:$C$2,  0))

Затем перетащите формулу вниз, чтобы получить оставшиеся ранжированные данные.

Связанный контент