Временное решение для именованного диапазона Проблема с функцией поиска в Excel - PullRequest
0 голосов
/ 03 января 2019

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

Затем я применяю формулу =INDEX(First_level,MATCH(TRUE,ISNUMBER(SEARCH(Keywords,C3374)),0)), чтобы получить это: Первый расчет Я нашел эту формулу здесь https://exceljet.net/formula/get-first-match-cell-contains

Затем я повторно применяю формулу к результату, то есть First_Level, используя эту формулу =INDEX(Second_Level,MATCH(TRUE,ISNUMBER(SEARCH(Frst_Lev_Check,H44)),0)) с этим Lookup. Второй поиск

Большую часть времени это работает, но для этого я получаю следующее Второй расчет , где классификация первого уровня верна, а второго - совершенно неверна.

Когда я углубился в глубины формулы, проблема в том, что функция поиска возвращает неправильное значение.

Это известная проблема: https://answers.microsoft.com/en-us/msoffice/forum/all/how-to-use-named-range-in-search-function/14c8c989-bed0-48f9-bce0-c0894571b557

Идеи приветствуются на обходные пути / как решить проблему.

Ура Джон

Ответы [ 2 ]

0 голосов
/ 03 января 2019

Несколько вещей относительно вашего вопроса:

  1. Правильный синтаксис для search - =SEARCH(find_text,within_text), поэтому правильная формула будет =SEARCH("Pear",List).
  2. Причина, по которой вы получаете #Value, заключается в том, что вы применяете search к диапазону, но функция предназначена только для ячеек.
  3. Лучший способ проверить, существует ли значение в диапазонеявляются функциями countif и match:

Функция countif показывает , сколько раз значение находится в диапазоне :

enter image description here

Функция match показывает , в какой строке первое значение равно :

enter image description here

0 голосов
/ 03 января 2019

Считаете ли вы:

=MATCH("Apple",List)

и

=MATCH("Pear",List)

для возврата 1 и 2 соответственно.

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