Как правильно склеить текст из нескольких ячеек таблицы Excel

Чтобы правльно склеить или соединить разный и не разный текст из нескольких ячеек таблицы Excel, существует несколько способов.

Способ 1. Функция СЦЕПИТЬ

В категории Текстовые есть функция СЦЕПИТЬ (CONCATENATE), которая соединяет содержимое нескольких ячеек (до 255) в одно целое, позволяя комбинировать их с произвольным текстом. Например, вот так.

Способ 1. Функция СЦЕПИТЬ

Способ 1. Функция СЦЕПИТЬ

Кстати, не забудьте о пробелах между словами – их надо прописывать как отдельные аргументы и заключать в скобки, ибо пробел тоже текст.

Способ 2. Символ для склеивания текста (&)

Для суммирования содержимого нескольких ячеек используют знак +, а для склеивания содержимого ячеек используют знак & (расположен на большинстве клавиатур на цифре 7).

Способ 2. Символ для склеивания текста

Способ 2. Символ для склеивания текста

При его использовании необходимо помнить, что:

 Этот символ надо ставить в каждой точке соединения, т.е. на всех «стыках» текстовых строк, так же как вы ставите несколько плюсов при сложении нескольких чисел (2+8+6+4+8).
 Если нужно приклеить произвольный текст (даже если это всего лишь точка или пробел, не говоря уж о целом слове), то этот текст надо заключать в кавычки, как и в предыдущем способе.

Способ 3. Макрос для объединения ячеек без потери текста

Начинающие пользователи часто пытаются использовать для объединения ячеек с текстом кнопку Объединить и поместить в центре (Merge and Center) с вкладки Главная (Home).

Проблема в одном – объединять ячейки эта функция умеет

Проблема в одном – объединять ячейки эта функция умеет

Проблема в одном – объединять ячейки эта функция умеет, а вот с текстом сложность – в результирующей объединенной ячейке остается текст только из верхней левой ячейки, а остальной текст мы теряем. Microsoft Excel об этом, кстати, честно предупреждает при попытке выполнения этой операции.

Microsoft Excel честно предупреждает при попытке выполнения операции

Microsoft Excel честно предупреждает при попытке выполнения операции

Сделать свой вариант этой функции с сохранением (точнее – слиянием) текста из всех объединяемых ячеек можно с помощью небольшого макроса. Откройте редактор Visual Basic сочетанием клавиш Alt+F11, вставьте в вашу книгу новый программный модуль (меню Insert – Module) и введите туда текст такого простого макроса.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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

Теперь, если выделить несколько ячеек и запустить этот макрос с помощью сочетания клавиш Alt+F8, то Excel объединит выделенные ячейки в одну, слив туда же и текст из всех ячеек через пробелы. Вместо пробела, конечно же, можно использовать другой разделитель – введите его во второй строке макроса в переменную sDELIM.


Top