Excel - перебирая данные, пока они не найдут нужную - PullRequest
1 голос
/ 09 июля 2009

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

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

=IF(BM5<>"External","",IF(AND(S5=VLOOKUP(A5,ExternalOnly,5,FALSE),A5=VLOOKUP(A5,ExternalOnly,1,FALSE)),S5,"")

Ответы [ 2 ]

1 голос
/ 09 июля 2009

Добавьте дополнительный ')' в конце формулы и посмотрите, работает ли это.

т.е. попробуйте это

= ЕСЛИ (BM5 <> "Внешний", "", ЕСЛИ (И (S5 = ВПР (А5, ExternalOnly, 5, FALSE), А5 = ВПР (А5, ExternalOnly, 1, FALSE)), S5,» «))

0 голосов
/ 09 июля 2009

Я использую это:

ИНДЕКС ($ E $ 1: $ E $ 7, MATCH (А7, $ D $ 1: $ D $ 7,0))

Вот пример таблицы для иллюстрации. формула находится в ячейках столбца B (в данном случае B7). Как это работает, совпадение находит соответствующую запись в списке целей ($ D $ 1: $ D $ 7) для нашего выбранного значения (A7). Он возвращает индекс из этого списка, а функция INDEX () позволяет нам выбрать другой столбец из соответствующей строки для возврата.

A         B      C     D       E
------    ---   ---    ------  ---
011597  99          012062  3
012062  3           012142  8
012136  3           011597  99
012142  8           012136  3
014157  2           014157  2
011582  87          011582  87
011707  101         011707  101
...