Функция сопоставления возвращает только первое вхождение

Я хочу составить 10 лучших результатов, и когда я использую функцию индекса и сопоставления для сопоставления оценок с кодами, если более одного кода имеют одинаковый балл, он будет сопоставлять его только с первым.

Как пропустить первое вхождение, чтобы сопоставить его со следующим

Я пробовал использовать массив с небольшими и строковыми функциями, но смог найти способ применить формулу

Функция сопоставления возвращает только первое вхождение

на снимке экрана показано, как данные представляются после использования индекса и функции сопоставления. Посмотрите, как ячейки с 3 по 5 имеют одинаковый код, соответствующий счету (puntaje), за исключением того, что другие коды также соответствуют счету, но функция возвращает только первое вхождение.

Используйте функции FILTER() и TAKE().

Harun24hr 17.04.2024 04:23

Пожалуйста, уточните вашу конкретную проблему или предоставьте дополнительную информацию, чтобы выделить именно то, что вам нужно. Поскольку сейчас написано, трудно точно сказать, о чем вы спрашиваете.

Community 17.04.2024 09:31

Если у вас более ранняя версия Excel, подумайте о том, что я сделал здесь: stackoverflow.com/a/58640367/4961700, если это поможет, проголосуйте...

Solar Mike 17.04.2024 13:01

на снимке экрана показано, как данные представляются после использования индекса и функции сопоставления. Посмотрите, как ячейки с 3 по 5 имеют одинаковый код, соответствующий оценке, за исключением того, что существуют и другие коды, которые также соответствуют оценке, но функция возвращает только первое вхождение.

djgaggo 17.04.2024 14:34
Структурированный массив Numpy
Структурированный массив Numpy
Однако в реальных проектах я чаще всего имею дело со списками, состоящими из нескольких типов данных. Как мы можем использовать массивы numpy, чтобы...
T - 1Bits: Генерация последовательного массива
T - 1Bits: Генерация последовательного массива
По мере того, как мы пишем все больше кода, мы привыкаем к определенным способам действий. То тут, то там мы находим код, который заставляет нас...
Что такое деструктуризация массива в JavaScript?
Что такое деструктуризация массива в JavaScript?
Деструктуризация позволяет распаковывать значения из массивов и добавлять их в отдельные переменные.
0
4
96
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Предполагая отсутствие ограничений версии для ваших тегов

  • Если ваши результаты не отсортированы
  • Создайте Table из своих данных и Name его Scores
=VSTACK(Scores[#Headers],TAKE(SORT(Scores,2,-1),10))

Если ваша таблица данных уже отсортирована по Puntaje, вы можете использовать:

=VSTACK(Scores[#Headers], TAKE(Scores,10))

Обратите внимание, что приведенное выше вернет только первые десять (10) записей. Если вы хотите вернуть более десяти записей (поскольку у вас больше баллов в первой десятке, вам следует использовать:

=VSTACK(Scores[#Headers],FILTER(Scores,Scores[Puntaje]>=LARGE(Scores[Puntaje],10)))

Если у вас более ранняя версия Excel, вы можете попробовать одно из следующих действий:

=INDEX(Scores,-1+AGGREGATE(14,6,1/(Scores[Puntaje]>=LARGE(Scores[Puntaje],10))*ROW(Scores),ROW(INDEX($A:$A,1):INDEX($A:$A,COUNT(1/(Scores[Puntaje]>=LARGE(Scores[Puntaje],10)))))),{1,2})

или, для еще более ранних версий:

=INDEX(Scores, IF(1, -1 + AGGREGATE(14, 6, 1 / (Scores[Puntaje] >= LARGE(Scores[Puntaje], 10)) * ROW(Scores), ROW(INDEX($A:$A, 1):INDEX($A:$A, COUNT(1 / (Scores[Puntaje] >= LARGE(Scores[Puntaje], 10))))))), {1,2})

Последние два могут или не должны быть введены как формулы массива.

Для массива введите формулу, после ввода формулу в ячейку или строку формул, удерживая нажатой ctrl + shift, нажимая enter. Если бы ты сделал это правильно, Excel поставит формулу в фигурные скобки {...}.

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

djgaggo 17.04.2024 16:09

Другие вопросы по теме