
У меня есть несколько списков, ранжирующих людей. Я поместил их в таблицу Excel, каждый список занимает 1 столбец
A=washington Post
B=Yahoo
C=Fox
D=NFL.com
Эти списки ранжируют одних и тех же людей, поэтому их имена есть в каждом списке, но в каждом списке они ранжированы по-разному. Все имена имеют одинаковый формат.
Я хочу, чтобы имена, которые появляются в этих списках наиболее последовательно, появлялись в порядке в отдельном последнем столбце. Идея заключается в том, чтобы ранжировать людей, которых большинство источников ранжируют наиболее последовательно.
Итак, если есть 4 списка, и Джо Дэвидсон имеет рейтинг 1,2,1,3 соответственно, он получит составной балл 7 (1+2+1+3). Человек с самым низким составным баллом окажется выше в последнем столбце, а следующий по низшему составному баллу будет занимать второе место, и так далее вниз по столбцу.
решение1
Один из возможных подходов, простой в использовании, с использованием вспомогательных столбцов: создать копию имен в столбце E и отсортировать их в алфавитном порядке.
Рассчитайте общий рейтинговый балл в столбце F с помощью
=ПОИСКПОЗ(E2,$A$2:$A$21,0)+ПОИСКПОЗ(E2,$B$2:$B$21,0)+ПОИСКПОЗ(E2,$C$2:$C$21,0)+ПОИСКПОЗ(E2,$D$2:$D$21,0)
Оцените результаты в столбце G с помощью
=RANK(F2,$F$2:$F$21,1)
Скорее всего, это будет включать дубликаты, поэтому вам нужно сделать тай-брейк в столбце H, используя
=IF(COUNTIF($G$2:$G$21,G2)>1,(ROW()/100),0)
Добавьте тай-брейк к начальному рангу в столбце I.
=G2+H2
Рассчитайте уникальный ранг в столбце J
=RANK(I2,$I$2:$I$21,1)
Перечислите имена в соответствии с уникальным рангом
=INDEX($E$2:$E$21,J2)
Скройте столбцы E–J, если они нарушают макет вашей таблицы, или поместите их на скрытый лист.