INDEX MATCH с> = и <= как критерии, не возвращающие правильное значение - PullRequest
0 голосов
/ 05 сентября 2018

У меня есть следующий код, который я использую, чтобы найти адрес при вводе и вернуть столбец E на листе 2:

=INDEX('Sheet2'!$A$1:$N$7755,MATCH(1,('Sheet2'!A:A=$C$4)*('Sheet2'!B:B=$I$4)*('Sheet2'!F:F=$G$4)*('Sheet2'!$C$2:$C$7755<=$B$4)*('Sheet2'!$D$2:$D$7755>=$B$4),0),5)

На Листе 2, A - это название улицы, B - это Zip, F - это город, C - самый низкий адрес для блока, а D - самый высокий адрес блока.

A       B       C   D   E   F
1ST ST  12345   100 399 N   City1
1ST ST  12346   100 299 N   City2
1ST ST  12347   101 522 N   City3
1ST ST  12347   600 899 E   City3

Однако, когда я использую это, при поиске 650 1st St, City3 12347 вернет N вместо E (пытаясь получить столбец 5).

Кажется, это проблема, в частности, в разделах> = и <= формулы, но я не уверен, что именно. Кто-нибудь видит, в чем причина проблемы? </p>

1 Ответ

0 голосов
/ 05 сентября 2018

Будьте осторожны с диапазонами, используемыми в INDEX/MATCH. AFAIK, диапазоны должны быть одинакового размера.

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

=INDEX('Sheet2'!$A$2:$N$7755,MATCH(1,('Sheet2'!A$2:A$7755=$C$4)*('Sheet2'!B$2:B$7755=$I$4)*('Sheet2'!F$2:F$7755=$G$4)*('Sheet2'!$C$2:$C$7755<=$B$4)*('Sheet2'!$D$2:$D$7755>=$B$4),0),5)

или

=INDEX('Sheet2'!$A:$N,MATCH(1,('Sheet2'!A:A=$C$4)*('Sheet2'!B:B=$I$4)*('Sheet2'!F:F=$G$4)*('Sheet2'!$C:$C<=$B$4)*('Sheet2'!$D:$D>=$B$4),0),5)

(Лично я рекомендую не с использованием полных ссылок на столбцы, так как это - особенно с более чем двумя столбцами - может замедлить вашу формулу / таблицу)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...