На листе Excel:
Столбец А заполнен случайными текстовыми значениями (например, словами / предложениями), которые необходимо обновить.
И столбцы B и C содержат строки, которые определяют изменения, которые необходимо внести в столбец A. Столбец B заполняет каждую ячейку старым текстом, а столбец C - новым текстом, каждая строка соответствует друг другу, то есть текст в B1 необходимо заменить текстом C1, B2 заменить на текст C2. В столбце B одна из вещей, которую нужно заменить, - это "
.
В столбце B нет повторяющихся значений. Однако в столбце C клетки могут повторяться. Замены должны соответствовать порядку, в котором они были написаны. И столбец D является результатом.
Каждая ячейка из столбца A должна проходить через эту замену из B1-C1, B2-C2, B3-C3 и т.д. До конца команд замещения в столбцах BC. Таким образом, перед тем, как дать окончательный результат, текст из столбца A будет меняться несколько раз, и только после всех изменений будет показывать результат в столбце D.
Пример:
Cell A1: Hello!
Cell A2: How are you "John"?
Cell A3: "Nice! thanks"
Cell B1: ! Cell C1: &
Cell B2: & Cell C2: .
Cell B3: " Cell C3: (empty)
Cell B4: ? Cell C4: #
Cell B5: Nice. thanks Cell C5: Fine, THANKS.
Итак, Cell A1, который является Hello!
, будет изменено B1-C1, поэтому будет Hello&
.
Затем изменится B2-C2 с изменениями, внесенными во временный результат Hello&
будет Hello.
,
Затем изменится B3-C3 и затем выполнит B4-C4, а затем B5-C5, и ничего не произойдет, потому что "
не существует в Hello.
..
После этого результат D1 будет Hello.
,
Затем он выполнит изменения A2 B1-C1 (ничего не делать), затем применится к этому будет делать B2-C2 (ничего не делать), затем B3-C3, что приведет к « How are you John?
(т. е. символы кавычек будут удалены), затем произойдет B4-C4, который выдаст « How are you John#
, а затем B5-C5, который здесь делать нечего.
Итак, результат D2 - How are you John#
.
Точно так же, значение А3 "Nice! thanks"
сначала изменится с B1-C1, превратившись в "Nice& thanks"
, затем B2-C2 станет "Nice. thanks"
, затем B3-C3 становится Nice. thanks
(опять же, кавычки будут удалены), тогда ничего не делать в B4-C4, а затем B5-C5, наконец , превратится в Fine, THANKS
в D3.
Результаты:
D1: Hello.
D2: How are you John#
D3: Fine, THANKS.
Какова будет формула в столбце D для выполнения этой множественной замены в строке, подчиняющейся порядку строк, записанному в столбцах B и C, что позволяет столбцу BC иметь более 300 строк? (Я хотел бы получить решение на основе формул, а не VBA, если это возможно.)