Вот что я сейчас использую в формуле:
=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 более снисходительно, поскольку позиция ключевого слова не имеет значения.