4

Я учитель, и мой класс сделал тест. У меня есть некоторый анализ их работы в каждом вопросе. Я хочу найти наибольшее значение в столбце B (лучший вопрос) и вернуть номер вопроса (столбец A) для этого.

Это отлично работает.

Затем я пытаюсь сделать то же самое, но найти худший вопрос, и я получаю ответ # N/A. Я не совсем понимаю, почему.

Данные следующие:

    A   B
1   Q   Score
2   1   1.13
3   2   1.13
4   3   -0.94
5   4   -1.29
6   5   -1.34
7   6   -0.67
8   7   0.11
9   8   0.91
10  9a  -0.88
11  9b  -1
12  10ab    0.93
13  10c -1.21
14  11  -1
15  12  0.88
16  13  -0.83
17  14  0.94
18  15  -0.88
19  16  -0.13
20  17  0.72
21  18  -0.85
22  19  0.2
23  20  -1.32
24  21  1.19
25  22  -0.06
26  23  1.15
27  24  -0.48
28  25  0.31
29  26  1.15
30  27  0.5
31  28  1.41

Запрос =LOOKUP(MAX(B2:B31),B2:B31,A2:A31) возвращает 28, как и должно быть, но запрос =LOOKUP(MIN(B2:B31),B2:B31,A2:A31) возвращает #N/A

Любой совет?

2 ответа2

3

Если ваши данные не отсортированы, как в примере выше, вы можете использовать:
=OFFSET(A1,MATCH(MIN(B2:B31),B2:B31,0),0)
=OFFSET(A1,MATCH(MAX(B2:B31),B2:B31,0),0)

Даже для Max ваша формула приведет к N/A, если максимум не в конце столбца.

Тейлин прав, если данные не отсортированы, правильный результат - просто удача, и если вы используете Vlookup с False, данные в столбце A (столбец результатов) должны быть справа от столбца B (оценка в первом столбце, затем Q после).

С Match и Offset нет необходимости сортировать, просто напишите 0 в Match, чтобы получить точное совпадение.

3

Поиск требует сортировки данных по возрастанию. Тот факт, что вариант формулы Max возвращает верный результат, является чистой удачей.

Поиск в отсортированном диапазоне работает так:

  • Разрежьте диапазон данных пополам и посмотрите на последнее значение первой половины
  • если значение поиска меньше этого, переходите к первой половине данных, иначе переходите ко второй половине данных
  • повторяйте предыдущие шаги, пока не останется только одно значение

Более подробную информацию о приближенном поиске соответствия можно найти здесь. Vlookup - зачем мне ИСТИНА или ЛОЖЬ? ,

Если данные не отсортированы, то любой правильный результат - просто удача.

Редактировать:

Решение со смещением, предложенное в другом ответе, является нестабильным и может быть причиной медленных рабочих книг. Если порядок сортировки диапазона не может быть изменен, то Index/Match является энергонезависимой альтернативой.

=Index(A2:A31,MATCH(MIN(B2:B31),B2:B31,0))
=Index(A2:A31,MATCH(MAX(B2:B31),B2:B31,0))

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .