Как можно заменить определенный символ / символ соседним словом / строкой?

#excel #excel-formula #excel-2013

#excel #excel-формула #excel-2013

Вопрос:

У меня есть два столбца, например, так (в Excel 2013):

                A                  B         ..
1     <Title text="x" />        purple
2     <Title text="x" />        Bronze
3     <Title text="x" />        Violet
4     <Title text="x" />        Cyan
.     <Title text="x" />        Magenta
 

и строки продолжаются довольно долго.

Моя цель — заменить x в столбце A на соседнюю строку в столбце B.

Мой подход заключается в следующем: у меня есть столбец, заполненный строками (фиолетовыми, бронзовыми и т. Д.), В которых я хочу заменить x <Title text="x" /> (вместо того, чтобы выполнять утомительный процесс копирования и вставки его для каждой строки). строка). Для этого я пытаюсь найти способ, чтобы каждая строка заполняла x и отображалась в третичном столбце — скажем, в столбце C.

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

Комментарии:

1. Без VBA — или путем выполнения ряда трудоемких операций поиска и замены — вы не сможете выполнить замены в тех же ячейках, в которых в настоящее время находятся данные. Однако решение на основе формул было бы достаточно простым, если бы вы были довольны результатами, находящимися в дополнительном столбце.

2. Да, конечно. Я просто хочу иметь строки XML со смежными строками в столбце B. Не имеет значения, попадает ли результат в столбец C или D.

3. Должны ли заменяемые xs всегда заключаться в кавычки? Если нет, то что у них общего, что отличает их от других вхождений этой буквы в строке, которые не подлежат замене?

4. Если столбец A всегда выглядит одинаково, вам действительно не нужно ничего заменять, что-то вроде ="<Title text="""amp;B2amp;""" />" трюка. Если столбец содержит разные вещи, и вам всегда нужно заменять строку "x" , вы можете SEARCH использовать для этого и использовать некоторые LEFT , MID и RIGHT вызовы для объединения результатов.

5. Я не знаком с концентрированием вещей, но мне было интересно, есть ли способ записи ="<Title text="""amp;B2amp;""" />" , но с заменой B2 универсальным идентификатором для соседнего столбца. Итак, если бы я вставил это в A55, код подтвердил бы, что x необходимо заменить на то, что находится в B55.

Ответ №1:

Поскольку вы упоминаете «определенный символ», я полагаю, что ваш x буквальный, поэтому предлагаю:

 =SUBSTITUTE(A1,"""x""",""""amp;B1amp;"""")  
 

в строке 1 скопировано вниз. Это аналогичный подход к @xificurC, но он был бы более гибким для всего, что лежит по обе стороны от "x" .

Комментарии:

1. Я ценю ваше предложение, хотя оно мне не пригодится в этом сценарии. У меня есть почти неограниченное количество возможных строк. Мне пришлось бы написать B1 для A1 и по дороге A19987 для B19987 и так далее. Возможно ли иметь идентификатор, который будет ссылаться на соседний столбец или что-то в этом роде?

2. С моей стороны это было невежество. Мне нужно было использовать его только один раз в столбце C, в первой строке, а затем скопировать его для всех остальных строк, и это изменило бы A1 и B1 на соответствующие строки. Спасибо за ваше решение.