Существует ли формула для поиска части текста в ячейке?

Существует ли формула для поиска части текста в ячейке?

Вот что я сейчас использую в формуле:

=IF(E6="Mix Design Gr S","By Mix Design","")&IF(E6="R-Value","By Soils","")&IF(E6="PS Package","By Soils","")

Есть ли способ искать только часть текста в ячейке E6, например «Mix» вместо «Mix Design Gr S»?

решение1

Я сосредоточусь только на той части формулы, о которой вы спрашиваете (первый тест IF).

Частичный текст с использованием ключевого слова

Если частичный текст представляет собой уникальное слово или строку, вы можете проверить его наличие. В Excel нет функции "CONTAINS()", но вы можете сделать эквивалент с некоторой вложенностью.

=IF(ISERROR(SEARCH("mix",E6)),"","By Mix Design")

SEARCH ищет целевой текст (не чувствителен к регистру) в E6 (я использовал нижний регистр для "mix", чтобы проиллюстрировать это). Если он не находит его, возвращается ошибка. Проверка этого с помощью ISERROR дает обратную логику для "contains", поэтому я поменял местами результаты True и False.

Если вам нужен тест с учетом регистра, используйте FIND вместо SEARCH.

Частичный текст на основе позиции

Отличное замечание Engineer Toast в комментарии, который я добавлю сюда для полноты. Если первое слово (или некоторое количество символов) уникально, вы можете проверить эти символы. Чтобы провести тест с учетом регистра, проверьте сами символы:

=IF(LEFT(E6,3)="Mix","By Mix Design","")

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

=IF(UPPER(LEFT(E6,3))="MIX","By Mix Design","")

И просто для охвата основ, если ваша ситуация такова, что ваш частичный текст всегда появляется в определенной позиции в строке, вы можете провести более точный тест, посмотрев его там, а не где-либо еще в строке. Предположим, что ваше ключевое слово "Design" и оно всегда начинается с пятой позиции символа в строке, вы можете использовать:

=IF(MID(E6,5,6)="Design","By Mix Design","")

Обратите внимание, что если в данных есть несоответствия, например, пропущенный символ или лишний пробел, из-за чего ключевое слово не начинается с пятой позиции, тест не будет пройден. Решение SEARCH/FIND более снисходительно, поскольку позиция ключевого слова не имеет значения.

Связанный контент