Новости:

Теперь на форум можно залогиниться / зарегистрироваться с помощью ВКонтакте. Уже существующие пользователи могут связать свою учетную запись с аккаунтом ВКонтакте одним кликом в профиле пользователя http://forum.msexcel.ru/index.php?action=profile;area=account

Главное меню

Формула Excel для работы с несколькими поисками и заменами

Автор Ramin Sarkarov, 16.09.2016, 13:25

« назад - далее »

Ramin Sarkarov

Есть 2 листа в эксель, лист 1 и лист 2. В листе 1 2 столбца, в первом столбце исходный текст во втором справленный текст , который должен получиться с помощью формулы. В листе 2 тоже 2 столбца, в первом слова, которые формула должна найти в исходном тексте в листе 1, во втором столбце слова, которые нужно вставить вместо слов в исходном тексте листа 1. Нужно чтобы формула выбирала слово (в одной ячейке может быть несколько слов через запятую) из столбца 1 в листе 2 и искала это слово в столбце 1 (исходный текст) листа 1, если она находит слово, то формула должна заменить найденное слово, словом которое находится в столбце2 листа2 и в итоге вывести исправленный тест в столбец2 в листе1. Как то так, надеюсь смог обьяснить.

vikttur

Название темы должно отражать суть задачи. Замените сами или предложите модераторам новое название.

Помощь приходит быстрее, если приложен пример в файле Excel

Pelena

Вариант с пользовательской функцией (макросы должны быть разрешены)
Function ReplaceWord(ByVal phrase As Range, arrWords As Range)
    Dim x, w, i&, j&, s$
    If arrWords.Columns.Count <> 2 Then Exit Function
    If phrase.Count > 1 Then Exit Function
    x = arrWords.Value
    s = phrase.Value
    For i = 1 To UBound(x)
        w = Split(x(i, 1), ",")
        For j = 0 To UBound(w)
            s = Replace(s, Trim$(w(j)), x(i, 2))
        Next j
    Next i
    ReplaceWord = s
End Function