Как объединить текст из трёх ячеек в одну в Excel: от простых формул до Power Query

Объединение текста из нескольких ячеек в одну — одна из самых востребованных операций в Microsoft Excel и Google Таблицах. Без этого навыка сложно обойтись при формировании отчётов, создании шаблонов писем или обработке баз данных. Например, когда нужно собрать ФИО из трёх отдельных колонок ("Фамилия", "Имя", "Отчество") или сгенерировать уникальные идентификаторы из разрозненных фрагментов.

Многие пользователи ошибочно думают, что для этой задачи достаточно функции ОБЪЕДИНИТЬ (или CONCATENATE в английской версии). Однако она имеет ограничения: не добавляет разделители между фрагментами и работает только с фиксированным количеством аргументов. В этой статье мы разберём 5 проверенных методов — от элементарных формул до продвинутых инструментов вроде Power Query, а также покажем, как избежать типичных ошибок при объединении ячеек с числами, датами или пустыми значениями.

Особое внимание уделим нюансам форматирования: что делать, если после объединения пропадают ведущие нули в номерах телефонов, как сохранить разрывы строк при переносе данных, и почему иногда вместо текста отображаются странные символы вроде ######. Все решения протестированы на Excel 2016–2023 и Microsoft 365, но majority методов работают и в старых версиях (2010–2013) с минимальными адаптациями.

1. Способ №1: Функция СЦЕПИТЬ (CONCATENATE) — базовый метод

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

=СЦЕПИТЬ(текст1; [текст2]; …)

Где текст1, текст2 и так далее — это либо адреса ячеек (например, A1), либо текстовые строки в кавычках (например, " " для пробела). Основной недостаток метода — отсутствие автоматического разделителя: если не добавить пробел или запятую вручную, слова "слипнутся".

  • 📌 Пример 1. Объединение фамилии, имени и отчества с пробелами:
    =СЦЕПИТЬ(A2; " "; B2; " "; C2)
  • 📌 Пример 2. Создание email из имени и домена:
    =СЦЕПИТЬ(B2; "@company.ru")
  • 💡 Лайфхак: Чтобы не писать пробелы вручную, создайте отдельную ячейку с символом пробела и ссылайтесь на неё в формуле.

⚠️ Внимание: Функция СЦЕПИТЬ игнорирует пустые ячейки, но если в одной из ячеек содержится число, оно будет преобразовано в текст без форматирования. Например, дата 15.05.2026 после объединения станет числом 45432 (её внутреннее представление в Excel).

2. Способ №2: Оператор & (амперсанд) — гибкость и простота

Оператор & (амперсанд) — альтернатива функции СЦЕПИТЬ, но с более лаконичным синтаксисом. Он позволяет объединять ячейки, текстовые строки и даже результаты других функций без ограничения по количеству аргументов. Главное преимущество — визуальная наглядность: формула читается как естественное предложение.

Примеры использования:

=A2 & " " & B2 & " " & C2  

=B2 & "@" & ДОМЕН!A1

Ключевые особенности метода:

  • ✅ Работает во всех версиях Excel, включая Excel 2003.
  • ✅ Позволяет добавлять произвольные разделители (запятые, тире, абзацы с CHAR(10)).
  • ⚠️ Требует ручного управления пробелами — забыв добавить " ", вы получите слипшийся текст.

Важно: Если одна из ячеек содержит ошибку (например, #Н/Д), оператор & вернёт ту же ошибку. Чтобы этого избежать, оберните каждую ячейку в функцию ЕСЛИОШИБКА: =ЕСЛИОШИБКА(A2;"") & " " & ЕСЛИОШИБКА(B2;"").

📊 Какой способ объединения ячеек вы используете чаще?
Функция СЦЕПИТЬ
Оператор &
Функция ТЕКСТСОЕДИНИТЬ
Power Query
Другой

3. Способ №3: Функция ТЕКСТСОЕДИНИТЬ (TEXTJOIN) — обработка диапазонов

Функция ТЕКСТСОЕДИНИТЬ (в английской версии — TEXTJOIN) появилась в Excel 2016 и стала настоящим прорывом для работы с текстом. Её ключевые преимущества:

  • 🔹 Объединяет целые диапазоны ячеек (например, A2:A100), а не только отдельные ячейки.
  • 🔹 Позволяет игнорировать пустые ячейки (параметр истина/ложь).
  • 🔹 Поддерживает произвольный разделитель (пробел, запятая, абзац и т.д.).

Синтаксис функции:

=ТЕКСТСОЕДИНИТЬ(разделитель; игнорировать_пустые; текст1; [текст2]; …)

Примеры применения:

ЗадачаФормулаРезультат
Объединить список товаров через запятую=ТЕКСТСОЕДИНИТЬ(", "; ИСТИНА; A2:A10)Яблоки, Бананы, Груши
Собрать адрес из улицы, дома и квартиры=ТЕКСТСОЕДИНИТЬ(", "; ЛОЖЬ; B2; C2; D2)Ленина, 5, 12
Объединить ячейки с переносом строки=ТЕКСТСОЕДИНИТЬ(СИМВОЛ(10); ИСТИНА; A2:C2)Иванов
Иван
Иванович

⚠️ Внимание: Если вы используете СИМВОЛ(10) для переноса строк, не забудьте включить перенос текста в ячейке с результатом (нажмите Ctrl+1 → вкладка Выравнивание → поставьте галочку Переносить по словам).

Убедиться, что версия Excel не старше 2016|

Проверить диапазоны на наличие скрытых символов (пробелов, табуляций)|

Если нужны перenosы строк, включить параметр "Переносить по словам" в ячейке результата|

Для чисел и дат применить функцию ТЕКСТ, чтобы сохранить форматирование-->

4. Способ №4: Power Query — объединение с предварительной обработкой

Если вам нужно не просто объединить текст, но и очистить данные (убрать лишние пробелы, привести к единому регистру, заменить символы), лучший инструмент — Power Query (вкладка ДанныеИз таблицы/диапазона). Этот метод особенно полезен для обработки больших массивов данных (тысячи строк).

Пошаговая инструкция:

  1. Выделите исходный диапазон и нажмите Данные → Из таблицы/диапазона.
  2. В открывшемся редакторе Power Query выберите столбцы, которые нужно объединить.
  3. Нажмите Преобразовать → Столбец → Объединить.
  4. Укажите разделитель (например, пробел или запятую) и название нового столбца.
  5. Нажмите Закрыть и загрузить, чтобы вернуть данные в Excel.

Преимущества Power Query:

  • 🔧 Гибкая предобработка: можно удалить дубликаты, заменить текст, извлечь подстроки до объединения.
  • 🔄 Автоматическое обновление: при изменении исходных данных достаточно обновить запрос (Данные → Обновить все).
  • 📊 Работа с несколькими источниками: объединяйте данные из разных таблиц или даже файлов.

⚠️ Внимание: Power Query создаёт связанную таблицу, а не статические данные. Если вам нужен "мёртвый" результат без привязки к источнику, скопируйте итоговый столбец и вставьте как Значения (Ctrl+Shift+V).

Как объединить текст с условием в Power Query?

В Power Query можно использовать условное объединение с функцией if в языке M. Например, чтобы объединить только ячейки, где длина текста > 3 символов:

= Table.AddColumn(#"Previous Step", "Custom", each if Text.Length([Column1]) > 3 then [Column1] & " " & [Column2] else null)

Этот код добавит новый столбец "Custom" с объединённым текстом только для строк, удовлетворяющих условию.

5. Способ №5: Макрос VBA — автоматизация для повторяющихся задач

Если вам регулярно приходится объединять текст по одним и тем же правилам, имеет смысл записать макрос на VBA. Например, чтобы объединить ячейки в выделенном диапазоне с разделителем-запятой:

Пример кода для объединения с запятой:

Sub CombineCells()

Dim rng As Range, cell As Range

Dim result As String

Set rng = Selection

For Each cell In rng

If cell.Value <> "" Then

result = result & ", " & cell.Value

End If

Next cell

result = Mid(result, 3) ' Удаляем первую запятую

MsgBox "Результат: " & result

End Sub

Как использовать:

  1. Нажмите Alt+F11, чтобы открыть редактор VBA.
  2. Вставьте код в новый модуль (Insert → Module).
  3. Выделите ячейки на листе и запустите макрос (F5 или кнопка Run).

Преимущества VBA:

  • Мгновенная обработка тысяч строк (быстрее, чем формулы).
  • 🛠 Гибкая логика: можно добавить условия, циклы, обработку ошибок.
  • 🔄 Сохранение макроса в книге для повторного использования.

⚠️ Внимание: Перед запуском макроса сохраните файл в формате .xlsm (с поддержкой макросов), иначе код не будет работать. Также отключите защиту от макросов в настройках Excel (Файл → Параметры → Центр управления безопасностью).

6. Типичные ошибки и как их избежать

Даже опытные пользователи Excel сталкиваются с проблемами при объединении текста. Вот самые распространённые ошибки и их решения:

ОшибкаПричинаРешение
Вместо текста отображаются ######Слишком длинный результат для ширины столбцаРасширьте столбец или примените перенос текста (Ctrl+1 → Выравнивание)
Даты или числа преобразуются в странные символыExcel интерпретирует их как внутренние кодыИспользуйте функцию ТЕКСТ: =ТЕКСТ(A2;"dd.mm.yyyy") & " " & B2
Пропали ведущие нули (например, в телефонах)Excel удаляет нули в числовых форматахПредварительно отформатируйте ячейки как текст или используйте =ТЕКСТ(A2;"0")
Формула возвращает ошибку #ЗНАЧ!Одна из ячеек содержит ошибку (например, #Н/Д)Оберните каждую ячейку в ЕСЛИОШИБКА: =ЕСЛИОШИБКА(A2;"") & ЕСЛИОШИБКА(B2;"")

Ещё одна распространённая проблема — лишние пробелы в результате. Чтобы их убрать, используйте функцию СЖПРОБЕЛЫ:

=СЖПРОБЕЛЫ(СЦЕПИТЬ(A2; " "; B2; " "; C2))

Если вам нужно объединить текст с сохранением регистра (например, привести всё к верхнему регистру), комбинируйте функции:

=ПРОПИСН(СЦЕПИТЬ(A2; " "; B2))  

=СТРОЧН(СЦЕПИТЬ(A2; " "; B2))

=ПРОПНАЧ(СЦЕПИТЬ(A2; " "; B2))

7. Сравнение методов: какой выбрать?

Выбор способа объединения зависит от объёма данных, требований к форматированию и версии Excel. Ниже сравнительная таблица:

МетодПодходит дляПлюсыМинусы
СЦЕПИТЬ/CONCATENATEПростых задач с 2–5 ячейкамиПростота, работает во всех версияхОграничение на 255 аргументов, нет разделителей
Оператор &Гибкого объединения с разделителямиНеограниченное количество ячеек, наглядностьТребует ручного управления пробелами
ТЕКСТСОЕДИНИТЬ/TEXTJOINДиапазонов данных, игнорирования пустых ячеекОбрабатывает массивы, гибкие разделителиТолько Excel 2016 и новее
Power QueryБольших наборов данных с предобработкойОчистка данных, автоматическое обновлениеТребует изучения интерфейса, создаёт связанные таблицы
VBAАвтоматизации повторяющихся задачВысокая скорость, гибкая логикаТребует знаний программирования, риск ошибок

💡 Совет: Если вы работаете с данными из внешних источников (например, импортируете CSV), сначала используйте Power Query для очистки, а затем применяйте формулы для финального объединения. Это сэкономит время и уменьшит количество ошибок.

FAQ: Ответы на частые вопросы

Можно ли объединить текст из ячеек с сохранением форматирования (цвета, шрифта)?

Нет, стандартные функции Excel (СЦЕПИТЬ, &, ТЕКСТСОЕДИНИТЬ) объединяют только значения ячеек, игнорируя форматирование. Чтобы сохранить стили, используйте:

  • 🎨 Надстройку "Merge Cells" (например, Kutools for Excel).
  • 🖌 Копирование как картинки: выделите ячейки → Ctrl+C → вставьте как Рисунок (Home → Paste → As Picture).
  • 📝 VBA: напишите макрос, который копирует ячейки с форматированием в Word или PowerPoint.
Как объединить текст из ячеек с переносом строки, чтобы в результате тоже были абзацы?

Используйте функцию СИМВОЛ(10) как разделитель и включите перенос текста в ячейке результата:

=A2 & СИМВОЛ(10) & B2 & СИМВОЛ(10) & C2

Затем:

  1. Выделите ячейку с формулой.
  2. Нажмите Ctrl+1 (или правая кнопка → Формат ячеек).
  3. На вкладке Выравнивание поставьте галочку Переносить по словам.

⚠️ В Google Таблицах вместо СИМВОЛ(10) используйте CHAR(10).

Почему после объединения числа преобразуются в даты (например, "1-янв" вместо "1")?

Excel автоматически интерпретирует числа как даты, если они соответствуют формату даты (например, 11-янв, 1212-дек). Чтобы этого избежать:

  • 🔢 Предварительно отформатируйте ячейки с числами как текст (Ctrl+1 → Числовой формат → Текстовый).
  • 📝 Используйте функцию ТЕКСТ в формуле:
    =СЦЕПИТЬ(ТЕКСТ(A2;"0"); " "; B2)
  • 📊 Добавьте апостроф перед числом в исходной ячейке: '1 (Excel воспримет это как текст).
Как объединить текст из ячеек, если некоторые из них пустые?

Если использовать СЦЕПИТЬ или &, пустые ячейки превратятся в лишние пробелы или разделители. Решения:

  1. Функция ТЕКСТСОЕДИНИТЬ:
    =ТЕКСТСОЕДИНИТЬ(" "; ИСТИНА; A2:C2) — автоматически пропускает пустые ячейки.
  2. Функция ЕСЛИ:
    =ЕСЛИ(A2<>""; A2 & " "; "") & ЕСЛИ(B2<>""; B2 & " "; "") & C2
  3. Power Query: при объединении столбцов поставьте галочку Игнорировать пустые.
Можно ли объединить текст из ячеек в Google Таблицах? Если да, то как?

Да, в Google Таблицах доступны аналогичные функции:

  • 🔗 =CONCATENATE(A2; " "; B2; " "; C2) — аналог СЦЕПИТЬ.
  • 🔗 =A2 & " " & B2 & " " & C2 — оператор & работает так же.
  • 🔗 =TEXTJOIN(", "; TRUE; A2:C2) — аналог ТЕКСТСОЕДИНИТЬ.

⚠️ Важно: В Google Таблицах разделителем целой и дробной части является точка (например, 1.5), а не запятая, как в Excel. Это может влиять на формулы с числами.