Excel: склеиваем текст из разных ячеек

О том, как разделять слипшийся текст, мы уже говорили. Теперь поговорим о том, как собрать содержимое нескольких ячеек в одну.

Простое решение: использовать функцию СЦЕПИТЬ

В текстовых формулах есть стандартная функция СЦЕПИТЬ, которая может объединить текст, числа или ссылки объёмом до 255 строк из разных ячеек в  одну:

 Excel: склеиваем текст из разных ячеек

Важно: символы-разделители должны быть обозначены как отдельные аргументы. В приведенном примере мы использовали пробелы; аналогично аргументами могут выступать запятые, точки и прочие символы, заключенные в кавычки. Разделители прописываются вручную.

Красивое решение: использовать амперсанд

Альтернативой для функции СЦЕПИТЬ может выступать амперсанд – знак «&» (в большинстве случаев расположенный на цифре «7»).

  • Амперсанд ставится на «стыках ячеек», то есть между их содержимым (по аналогии с тем, как вы используете знак «+» при суммировании чисел: 7+5+11+3).
  • Добавлять пробелы, запятые или любые другие аргументы (даже целые слова) между ячейками придется вручную. Аргументы также нужно заключать в кавычки.

 Excel: склеиваем текст из разных ячеек

Кстати, в случае необходимости полные имена вы легко можете сократить до инициалов посредством функции ЛЕВСИМВ: выделяете нужную ячейку и оставляете первый символ; не забудьте указать подходящий разделитель!

 Excel: склеиваем текст из разных ячеек

Непривычное решение: макрос MergeToOneCell

Объединить ячейки, конечно, может кнопка Объединить и поместить в центре. Но здесь возникает проблема:

Excel: склеиваем текст из разных ячеек

Если терять содержимое нельзя, используем специальный макрос, для чего проделываем уже знакомый путь:

  • вызываем редактор Visual Basic горячими клавишами ALT+F11;
  • создаем новый модуль (Insert → Module) и вставляем следующий макрос:

Sub MergeToOneCell()

Const sDELIM As String = » » ‘символ-разделитель

Dim rCell As Range

Dim sMergeStr As String

If TypeName(Selection) <> «Range» Then Exit Sub ‘если выделены не ячейки — выходим

With Selection

For Each rCell In .Cells

sMergeStr = sMergeStr & sDELIM & rCell.Text ‘собираем текст из ячеек

Next rCell

Application.DisplayAlerts = False ‘отключаем стандартное предупреждение о потере текста

.Merge Across:=False ‘объединяем ячейки

Application.DisplayAlerts = True

.Item(1).Value = Mid(sMergeStr, 1 + Len(sDELIM)) ‘добавляем к объед.ячейке суммарный текст

End With

End Sub

Теперь выделяйте ячейки, содержимое которых нужно объединить, и запускайте макрос MergeToOneCell путем нажатия горячих клавиш ALT+F8. Так вы «сольёте» содержимое разных ячеек в одну (текст будет разделен пробелами):

Excel: склеиваем текст из разных ячеек

Пускай работа спорится!

Пролистать наверх