Excel находит ячейки из диапазона, в котором значение поиска находится внутри ячейки
Я снова пытаюсь найти свой ответ в Google, но я уверен, что он должен существовать. Извините, если я начинаю сталкиваться с новичком: мне кажется, когда дело доходит до Excel!
То, что я хотел бы сделать, это попросить его выполнить поиск в диапазоне, а затем найти в этом диапазоне ячейки, содержащие текст, который находится в моей функции поиска. Мне не нужны какие-либо результаты, кроме как ИСТИНА или>1 (если это соответствует, очевидно).
В этом случае я ищу диапазон, состоящий из нескольких лет, по одному году в каждой ячейке, и пытаюсь найти ячейки в этом диапазоне, которые содержат год из списка лет, которые все находятся в одной ячейке.
В основном я хочу использовать функцию, похожую на функцию поиска, я думаю.
=SEARCH(text to find, find within text)
Тем не менее, я бы хотел сделать наоборот и найти ячейки, которые содержат часть текста в исходной ячейке:
=SEARCH(find within text, text to find)
Или, более конкретно
=SEARCH("2001,2002,2003,2004,2005", "2003")
Возможно ли это без использования макроса? Я предпочел бы избежать этого, если это вообще возможно. Все рассматриваемые ячейки отформатированы как текст.
Я экспериментировал с COUNTIF, но опять-таки он работает в противоположность тому, что мне нужно.
Извините, если этот вопрос неясен. Надеюсь, что кто-то может помочь, заранее спасибо.
Джо
1 ответ
Я уверен, что есть лучший способ, но если я правильно понимаю, вы можете попробовать SUM
в сочетании с формулой массива (введите с Ctrl+Shift+Enter
):
=IF(SUM(IFERROR(FIND(A1:E1,G1),0))>0, "FOUND", "NOT FOUND")
Вот, A1:E1
содержал отдельные годы и G1
содержал единственную клетку лет. Это работает FIND
в каждой ячейке диапазона, возвращая позицию, если она находит совпадение в целевой ячейке, и возвращая 0, если нет (IFERROR
это функция 2007 - если у вас нет Excel 2007, мы можем переписать). Затем вы суммируете результаты FIND
функция, и если она больше 0, это означает, что вы нашли совпадение где-то.