Как объединить строку со всеми ячейками столбца (на месте)?

Как объединить строку со всеми ячейками столбца (на месте)?

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

Например, если у меня есть столбец:

А
а
б

Я хочу получить:

А
новый
б новый

Я знаю, что я могу сделать это =A1&" new"в первой ячейке B и перетащить (затем переопределить столбец A сгенерированными значениями в столбце B). Но как я уже сказал, я ищуна местерешение, которое не использует вспомогательный столбец, а просто обновляет столбец A.

Предпочтительно искать решение без VBA, но это тоже будет принято.

решение1

Самым простым решением будет создать новый столбец с вашей формулой =A1&" new"и скопировать-вставить его поверх старого столбца. Вы можете использовать функцию Paste special of Values, чтобы не перезаписывать формулы.

Сложным решением было бы использование макроса VBA, подобного этому:

Sub AppendToExistingOnLeft()
Dim c As Range
For Each c In Selection
  If c.Value <> "" Then c.Value = c.Value & " new"
Next
End Sub

Этот VBA можно использовать следующим образом:

  1. Выберите диапазон

  2. Удерживайте клавишу Alt+ F11, чтобы открыть окно Microsoft Visual Basic.

  3. НажмитеВставить > Модульи вставьте указанный выше код VBA в окно модуля.

  4. Нажмите клавишу F5, чтобы запустить этот макрос.

Связанный контент