2016-08-11 3 views
1

Возможно ли построить формулу в MS excel, которая заменит только точное слово? Например:Excel заменяет только точный текст

Мое яблоко красное. Я хочу заменить красный цвет зеленым, поэтому он идет Мое яблоко зеленое.

Я знаю, что могу использовать = заменить

Но если мое предложение: Мое яблоко красновато. Формула должна игнорировать и не заменять красную часть.

Я думал использовать эту комбинацию "" & "red" & "", поэтому он изменился бы только в том случае, если есть место до или после. Но по какой-то причине я не могу заставить его работать.

Edit: Это то, что я

enter image description here

= ЗАМЕНИТЬ (A1, ПОИСК (" "& E1, A1), LEN (E1) + 1"," & E1)

Если я добавлю & "" после E1, он сломается, потому что свободного места осталось.

+0

Почему не просто '«красный»'? Странно, что он не работает. Что происходит? Он заменяет красноватый? – Andreas

+0

'' Мое яблоко красное. '' Не имеет места в конце, вероятно, почему это не работает. –

+0

Да, вы правы. Я получаю сообщение об ошибке, потому что в конце нет места. Может быть, есть более умный способ сделать эту замену? –

ответ

0

Если вы на самом деле не имеют . в конце заявления, то что-то, как это будет делать:

=IF(SEARCH("red",A1)+LEN("red")-1 = LEN(A1),SUBSTITUTE(A1," red"," green"),IF(SEARCH("red",A1)=1,SUBSTITUTE(A1,"red ","green "),SUBSTITUTE(A1," red "," green "))) 

![enter image description here

+0

Спасибо, он работает. Также попытаемся понять, как работает REGEX. –

Смежные вопросы