Проверьте, содержит ли ячейка подстроку

Есть ли встроенная функция, чтобы проверить, содержит ли ячейка данный символ / подстроку?

Это означает, что вы можете применять текстовые функции, такие как Left / Right / Mid на условной основе, без ошибок при разграничении символов.

Попробуйте использовать это:

 =ISNUMBER(SEARCH("Some Text", A3)) 

Это вернет TRUE если ячейка A3 содержит Some Text .

Следующая формула определяет, появится ли в ячейке C10 текст «CHECK». Если это не так, результат будет пустым. Если это так, результатом будет работа «ПРОВЕРКА».

 =IF(ISERROR(FIND("CHECK",C10,1)),"","CHECK") 

Для тех, кто хотел бы сделать это, используя одну функцию внутри оператора IF, я использую

 =IF(COUNTIF(A1,"*TEXT*"),TrueValue,FalseValue) 

чтобы увидеть, находится ли подстрока TEXT в ячейке A1

[ПРИМЕЧАНИЕ: ТЕКСТ должен иметь звездочки вокруг него]

Проверьте функцию FIND() в Excel.

Синтаксис:

 FIND( substring, string, [start_position]) 

Возвращает #VALUE! если он не найдет подстроку.

Эта формула кажется мне более интуитивной:

 =SUBSTITUTE(A1,"SomeText","") <> A1 

это возвращает TRUE, если «SomeText» содержится внутри A1.

Формулы IsNumber / Search и IsError / Find, упомянутые в других ответах, безусловно, работают, но мне всегда приходится слишком часто искать помощь или экспериментировать в Excel с этими тегами.

Мне нравится Rink.Attendant.6 ответ. Я действительно хочу проверить несколько строк и сделать это следующим образом:

Сначала ситуация: имена, которые могут быть домашними строителями или именами сообществ, и мне нужно, чтобы собрать разработчиков как одну группу. Для этого я ищу слово «строитель» или «строительство» и т. Д.

 =IF(OR(COUNTIF(A1,"*builder*"),COUNTIF(A1,"*builder*")),"Builder","Community") 

Это старый вопрос, но решение для тех, кто использует Excel 2016 или новее, вы можете удалить необходимость в вложенных структурах, используя новые IFS( condition1, return1 [,condition2, return2] ...) условно.

Я отформатировал его, чтобы сделать его более ясным, как его использовать для случая этого вопроса:

 =IFS( ISERROR(SEARCH("String1",A1))=FALSE,"Something1", ISERROR(SEARCH("String2",A1))=FALSE,"Something2", ISERROR(SEARCH("String3",A1))=FALSE,"Something3" ) 

Поскольку SEARCH возвращает ошибку, если строка не найдена, я завернул ее в ISERROR(...)=FALSE чтобы проверить правду, а затем вернуть требуемое значение. Было бы здорово, если бы SEARCH вернул 0 вместо ошибки для удобочитаемости, но это именно то, как это работает, к сожалению.

Еще одна важная важность заключается в том, что IFS вернет совпадение, которое оно находит первым, и поэтому заказ имеет важное значение. Например, если мои строки были Surf, Surfing, Surfs как String1,String2,String3 выше, а моя строка ячеек была Surfing она соответствовала бы первому члену вместо второго из-за подстроки Surf . Таким образом, общие знаменатели должны быть последними в списке. Моему IFS нужно будет заказывать Surfing, Surfs, Surf для правильной работы (в этом простом примере также будет работать подкачка Surfing и Surfs ), но Surf должен быть последним.

Вот формула, которую я использую

=IF( ISNUMBER(FIND(".",A1)), LEN(A1) - FIND(".",A1), 0 )

  • Формула Excel для поиска первого не-альфа-символа в ячейке?
  • Возвращает индекс последнего столбца с определенным именем в excel
  • Как извлечь значение между подчеркиваниями из нижеприведенного текста, используя только формулу?
  • Excel Cells преобразует август 2016 года на сегодняшний день
  • Диапазон. Ограничение результата формулы
  • Извлечение данных из другой таблицы
  • Если ячейка начинается с текстовой строки ... Формула
  • Возвращать содержимое ячейки на основе местоположения другой ячейки
  • Excel - Сравнение значений из 2 столбцов, двух других столбцов
  • Как сделать вычисления вложенных массивов с помощью INDEX ()?
  • Сравнить ячейки в диапазоне ячеек
  • Interesting Posts

    Таблица Excel ListObject – удаление фильтрованных / скрытых строк из таблицы ListObject

    Что не так со следующим кодом VBA для макросов Excel?

    Использование массива через две субфункции в VBA

    Excel меняет даты, когда день меньше месяца (например, 2 апреля) до конца (например, 4-го февраля)

    Найдите несколько рабочих листов и скопируйте все строки, где столбец A> 0, на указанный рабочий лист

    макрос vba для преобразования файла 600kb в base64

    Как найти повторяющиеся значения соответствия в двух столбцах Data Frame в Python?

    Как я могу загрузить индекс цвета каждой ячейки диапазона в массив?

    VBA: Substitute () работает с строкой, но не по содержимому ячейки

    Чтение вычисленных данных из ячейки формулы с формулой RTD в форме Excel 2007 Java-приложение

    Удаление раскрывающихся ящиков из файла Excel с помощью Interop.Excel

    Команда SaveAs не работает, но SaveCopyAs делает

    (Приоритет VBA-команд) Как сначала открыть файлы excel из Internet Explorer во время выполнения vba?

    Ошибка Excel VBA 450 в строке «Конечная функция»

    Как заполнить цвет в ячейках A1: A5 и B1: B5 и C1: C5 с тем же цветом с использованием C #?

    Давайте будем гением компьютера.