Решён
Как сделать рейтинг для спортсменов в Excel с автоматическим подсчетом?

Нужно организовать турнирную таблицу для школьных соревнований по настольному теннису. Есть 20 участников, каждый играет с каждым (круговая система).

Задача: после внесения результатов матчей (победа/поражение) таблица должна автоматически считать очки, сортировать участников по местам и показывать рейтинг.

В Excel почти не разбираюсь, знаю только базовые функции типа СУММ. Как это реализовать? Может есть готовые шаблоны?

Решение
40
Участник • 2 ответа

Вариант с динамической сортировкой без макросов.

Создаешь две таблицы: одна для ввода данных (матрица результатов как описали выше), вторая - для отображения рейтинга.

Во второй таблице используешь связку функций. Для вывода топ-1 участника:

=ИНДЕКС($A$2:$A$21; ПОИСКПOZ(МАКС($V$2:$V$21); $V$2:$V$21; 0))

Для топ-2:

=ИНДЕКС($A$2:$A$21; ПОИСКПOZ(НАИБОЛЬШИЙ($V$2:$V$21; 2); $V$2:$V$21; 0))

И так далее, меняя второй аргумент НАИБОЛЬШИЙ (3, 4, 5...). Рядом выводишь количество очков аналогичной формулой.

Таблица будет обновляться автоматически при изменении результатов в матрице. Минус - громоздко для 20 человек, нужно прописать 20 формул.

Аватар Сергей Петрович

Огромное спасибо! Формула работает, правда пришлось повозиться с синтаксисом (у меня Excel на английском). Сделал отдельный лист для рейтинга, выглядит профессионально!

14
Эксперт • 2 ответа

Делаешь матрицу результатов.

Столбец А - имена участников (строки 2-21). Строка 1 (столбцы B-U) - те же имена.

В ячейках пересечения (например B2, C2... U2 для первого участника) вбиваешь результат: 1 если выиграл, 0 если проиграл, пусто если матч не игрался.

В столбец V ("Очки") вставляешь формулу =СУММ(B2:U2) и протягиваешь вниз.

В столбец W ("Место") - формула =РАНГ(V2;$V$2:$V$21) и тоже протягиваешь.

Потом сортируешь всю таблицу по столбцу V (очки) по убыванию.

Аватар Сергей Петрович

А как сделать чтобы таблица сама сортировалась при изменении результатов? А то после каждого матча руками сортировать неудобно

Аватар Аня Миронова

Автосортировка в Excel без макросов не работает нормально. Либо руками сортируешь, либо пиши макрос на VBA который будет пересортировывать при изменении ячеек. Или используй Google Таблицы - там есть функция SORT которая обновляется динамически.

16
Участник • 1 ответ

Если нужна автосортировка и ты не хочешь возиться с формулами массивов, переходи на Google Sheets. Там есть функция SORT которая реагирует на изменения.

Например:

=SORT(A2:V21; 22; FALSE)

где 22 - номер столбца с очками, FALSE - сортировка по убыванию.

Таблица будет пересортировываться моментально после каждого изменения. Excel 2019 и ниже такого не умеет без VBA.

9
Эксперт • 1 ответ

Скачай готовый шаблон турнирной таблицы с сайта Microsoft Templates или с любого спортивного форума. Там уже все формулы настроены, только имена участников вбить и результаты проставлять. Зачем велосипед изобретать?

24
Участник • 1 ответ

Если у тебя Excel 365 (подписка Microsoft 365), там появилась новая функция СОРТИРОВКА (SORTBY в английской версии). Она динамическая и автоматически пересчитывается.

Создаешь таблицу с именами и очками, а рядом делаешь формулу:

=СОРТИРОВКА(A2:B21; 2; -1)

где A2:B21 - диапазон с именами и очками, 2 - сортировать по второму столбцу (очки), -1 - по убыванию.

Результат выводится в отдельный диапазон и обновляется сам. Но это работает только в новых версиях Excel, в 2016 и старше такой функции нет.

0
Эксперт • 1 ответ

а можно просто в ворде таблицу нарисовать и руками заполнять после каждого матча, не?)) зачем эти сложные формулы если турнир разовый

Написать ответ

Премодерация гостей

Вы отвечаете как гость. Ваш ответ будет скрыт до проверки модератором. Чтобы ответ появился сразу и вы получали репутацию — войдите в аккаунт.

Будьте вежливы и соблюдайте правила платформы.