Открыть сервисСервис

Разделение текста в ячейке Excel на несколько ячеек

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

Основные способы разделения

В Excel предусмотрено несколько независимых методов решения задачи. Выбор конкретного зависит от объёма данных, наличия регулярного разделителя и версии программы.

Инструмент «Текст по столбцам»

Самый распространённый способ — встроенный мастер «Текст по столбцам» (в русской версии Excel — «Текст по столбцам», в английской — Text to Columns). Он находится на вкладке «Данные» ленты инструментов.

Алгоритм действий:

  1. Выделить ячейку или диапазон ячеек, которые требуется разделить.
  2. На вкладке «Данные» нажать кнопку «Текст по столбцам».
  3. В мастере выбрать тип данных: «С разделителями» (если значения разделены пробелом, запятой, точкой с запятой или другим символом) или «Фиксированная ширина» (если столбцы имеют одинаковую длину в символах).
  4. Указать символ-разделитель или расставить границы столбцов мышью.
  5. Задать формат данных для каждого результирующего столбца (общий, текст, дата) и нажать «Готово».

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

Функция ПРОСТОЙТЕКСТ / TEXTSPLIT

В актуальных версиях Microsoft 365 и Excel 2021 и новее появилась динамическая массивная функция ПРОСТОЙТЕКСТ (в английской версии — TEXTSPLIT). Она разбивает текст непосредственно в формуле и «разливает» результат по нескольким ячейкам автоматически.

Синтаксис: =ПРОСТОЙТЕКСТ(текст; разделитель_по_столбцам; разделитель_по_строкам).

Пример: =ПРОСТОЙТЕКСТ(A1; ", ") разобьёт содержимое ячейки A1 по запятым с пробелом и выдаст результат в горизонтальном диапазоне. Функция поддерживает несколько разделителей одновременно, задаваемых как массив: =ПРОСТОЙТЕКСТ(A1; {",";" ";"|"}).

Формулы ЛЕВСС, ПРАВСС, СРЗНАЧ и ПОИСК

До появления ПРОСТОЙТЕКСТ текст разбивали вручную с помощью набора текстовых функций:

  • ПОИСК (ПОИСКБ) — находит позицию разделителя в строке.
  • СЧЛЗН — считает, сколько раз встречается разделитель (число частей = число разделителей + 1).
  • ЛЕВСС (ЛЕВССБ) — извлекает левую часть строки заданной длины.
  • ПРАВСС (ПРАВССБ) — извлекает правую часть.
  • СРЗНАЧ (СРЗНАЧБ) — извлекает подстроку по позиции начала и длине.

Типичный приём: если в ячейке A1 записано «Иванов Иван Иванович», а разделитель — пробел, то первое слово извлекается формулой =ЛЕВСС(A1; ПОИСК(" "; A1) - 1), второе — через СРЗНАЧ со смещением, третье — через ПРАВСС. Метод универсален, но требует создания отдельной формулы для каждого столбца и неудобен при большом числе частей.

Power Query

Для регулярной обработки больших массивов данных используется инструмент Power Query (редактор запросов, встроен в Excel 2016 и новее). Запись «Разделить столбец» (Split Column) позволяет выбрать разделитель (в том числе по символу, по количеству символов, по группам из N символов) и автоматически создаёт нужное число столбцов. Power Query удобен тем, что при обновлении исходных данных разделение выполняется повторно без повторной настройки.

Выбор разделителя

Частая проблема — неявный или составной разделитель. В реальных данных в качестве разделителя могут выступать:

РазделительПример содержимого ячейки
ЗапятаяМосква, Тверская, 1
Точка с запятойИванов; Иван; Иванович
ПробелИванов Иван Иванович
Табуляцияданные, скопированные из текстового файла
Перенос строкисписок в одной ячейке через Alt+Enter

Для разделения по переносу строки в мастере «Текст по столбцам» нужно включить специальную опцию «Другой» и задать символ через Ctrl+J. В формулах перенос строки задаётся функцией СИМВОЛ(10).

Частые ошибки

  • Перезапись данных справа от выделенного диапазона при использовании мастера «Текст по столбцам».
  • Некорректное распознавание дат и чисел: Excel может автоматически преобразовать часть текста в число или дату. Решение — перед разделением задать формат «Текст» для целевого столбца.
  • Лишние пробелы после разделения. Устраняются функцией СЖПРОБЕЛЫ (СЖПРОБЕЛЫБ), которую можно применить до или после разделения.
  • Разделитель-запятая в локалях, где десятичным разделителем также служит запятая, может конфликтовать при импорте чисел.

Разделение текста в отдельные ячейки по вертикали

Задача обратного характера — разнести данные из одного столбца по строкам — решается транспонированием (Специальная вставка → Транспонировать) либо формулами индексации с функцией ИНДЕКС и СЧЛЗН.

Источники

  • Документация Microsoft Support: «Разделение содержимого ячейки на несколько столбцов»
  • Книга Дж. Уокера «Microsoft Excel 2019 Bible»
  • Справка по функции TEXTSPLIT (Microsoft Learn)
Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru