Перейти к содержимому

Почему моя формула соответствия дает противоречивые результаты?

0

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

=HLOOKUP("Last Updated",$D$4:$D$293,MATCH(A5,$A$5:$A$293)+1) 

Намерение использовать формулу соответствия в этом состоит в том, чтобы вернуть значение строки. Он работает нормально до 221 строки, затем он дает необычные номера строк между ними, а затем в конце он снова начинает работать нормально.

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

enter image description here

73 просмотра
Palash Gangal спросил 7 лет назад
P 3

2 ответа

1
Принятый ответ

По умолчанию MATCHфункция предполагает, что ваш массив отсортирован в порядке возрастания:

Match_type Behavior  1 or omitted MATCH finds the largest value that is less than or equal to lookup_value.  The values in the lookup_array argument must be placed in ascending order,  for example: ...-2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE.  0 MATCH finds the first value that is exactly equal to lookup_value.  The values in the lookup_array argument can be in any order.  -1 MATCH finds the smallest value that is greater than or equal to lookup_value.  The values in the lookup_array argument must be placed in descending order,  for example: TRUE, FALSE, Z-A, ...2, 1, 0, -1, -2, ..., and so on. 

Для получения правильного результата используйте

MATCH(A5,$A$5:$A$293,0)

Juhasz, если я использую 0 в качестве третьего аргумента, это даст мне вывод из первого точного совпадения, тогда как я хочу вывод из последнего точного совпадения.

Palash Gangal · 7 лет назад · 0

Если я размещу свои данные в порядке возрастания, это будет работать нормально. Спасибо.

Palash Gangal · 7 лет назад · 0
Máté Juhász ответил 7 лет назад
M 14 101
1

Вы используете Match без третьего аргумента. Тогда по умолчанию будет установлено значение true, что означает, что Match вернет приблизительный поиск, что может привести к неверному результату, если данные не отсортированы.

Если вы не знаете о ИСТИНА, ЛОЖЬ 0или 1аргумент, прочитайте https://teylyn.com/2015/01/15/vlookup-why-do-i-need-true-or-false/, который применяется к Vlookup так же, как и к Match.

Да, я знаю о третьем аргументе, который работает по умолчанию в моей формуле. Но проблема в том, что если я упоминаю 0, что означает точное совпадение, то намерение сделать все это проваливается, так как требуется первое точное совпадение, и я хочу, чтобы оно получило последнее точное совпадение. Есть идеи, как я могу это сделать?

Palash Gangal · 7 лет назад · 0
teylyn ответил 7 лет назад
T 16 589