Excel разбить строку на слова

В этом курсе:

С помощью мастера распределения текста по столбцам текст, содержащийся в одной ячейке, можно разделить на несколько.

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

На вкладке Данные нажмите кнопку Текст по столбцам.

В мастере распределения текста по столбцам установите переключатель с разделителями и нажмите кнопку Далее.

Выберите разделители для своих данных. Например, запятую и пробел. Данные можно предварительно просмотреть в окне Образец разбора данных.

Нажмите кнопку Далее.

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

В поле Поместить в выберите место на листе, где должны отображаться разделенные данные.

Нажмите кнопку Готово.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.

Добрый день уважаемый читатель!

В статье я хочу рассмотреть вопрос о том, как и какими способами, возможно, разделить текст в ячейке, который оказался склеен! Если вы часто работаете с импортированными данными в Excel, то периодически встречаете такие проблемы как выгруженные точки вместо запятых, неправильный формат данных, слепленные слова или значения и многое другое. На этот случай Excel предоставляет несколько возможностей по нормализации данных и у каждого из них есть свои плюсы и минуса.

Разобрать слитый текст на необходимые составляющие возможно произвести с помощью:

Мастер разбора текстов

Рассмотрим самый простой способ разделить текст в ячейке, не по сути, а по исполнению. Для примера, очень наглядно это можно продемонстрировать на ФИО в одной ячейке, которые необходимо разделить на отдельные столбики для удобства сортировки и фильтрации.

Для выполнения задачи вызываем диалоговое окно «Мастер текстов (разбор)» и в 3 шага разделяем текст:

  1. Для начала нужно выделить данные, которые необходимо разделить, следующим шагом на вкладке «Данные» в разделе «Работа с данными» нажимаете иконку «Текст по столбцам» и в вызванном диалоговом окне мастера указываем формат рабочего текста. Выбираем 2 вида форматов:
  • С разделителями – это когда существует текст или символ, который условно будет отделять будущее содержимое отдельных ячеек;
  • Фиксированной ширины – это когда при помощи пробелов в тексте имитируется столбики одинаковой ширины.
  1. Вторым шагом, в нашем примере, указываем символ, выполняющий роль разделителя. В случаях, когда в тексте идут подряд пару разделителей, несколько пробелов, к примеру, то установка флажка для пункта «Считать последовательные разделители одним» укажет для Excel принимать их за один разделитель. Дополнительное условие «Ограничитель строк» поможет указать, что текстовые значения, содержащиеся в кавычках не делить (к примеру, название фирмы «Рудольф, Петер и Саймон»);
  2. Последним шагом, для уже разделённых столбиков, нужно указать в диалоговом окне мастера, предварительно выделив их, выбрать необходимый формат получаемых данных:
  • Общий – не проводит изменения данных, оставляя их в первоначальном виде, будет оптимальным выбором в большинстве случаев;
  • Текстовый – данный формат, в основном, необходим для столбиков с числовыми значениями, которые программа в обязательном порядке должна интерпретировать как текст. (К примеру, это числа с разделителем по тысяче или номер пластиковой карточки);
  • Дата – этот формат используется для столбиков с датами, кстати, формат самой даты можно выбрать в выпадающем списке.
Читайте также:  Телефон htc 820 характеристики

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

Рассоединяем текст с помощью формул

Для этого способа нам понадобятся возможности сочетаний функций ПОИСК и ПСТР. При помощи функции ПОИСК мы будем искать все пробелы, которые есть между словами (например, между фамилией, именем и отчеством). Потом функцией ПСТР выделяем необходимое количество символов для дальнейшего разделения.

И если с первыми двумя словами понятно, что и как разделять, то разделителя для последнего слова нет, а это значит что нужно указать в качестве аргумента условно большое количество символов, как аргумент «число_знаков» для функции ПСТР, например, 100, 200 или больше.

А теперь поэтапно рассмотрим формирование формулы для разделения текста в ячейке:

  • Во-первых, нам необходимо найти два пробела, которые разделяют наши слова, для поиска первого пробела нужна формула: =ПОИСК(" ";B2;1), а для второго подойдет: =ПОИСК(" ";B2;C2+1);
  • Во-вторых, определяем, сколько символов нужно выделить в строке. Поскольку позиции разделителя мы уже определили, то символов для разделения у нас будет на один меньше. Значит, будем использовать функцию ПСТР для изъятия слов, с ячейки используя как аргумент «количество_знаков» результат работы предыдущей формулы. Для определения первого слова (Фамилии) нужна формула: =ПСТР(B2;1;ПОИСК(" ";B2;1)), для определения второго значения (Имя): =ПСТР(B2;ПОИСК(" ";B2;1)+1;ПОИСК(" ";B2;ПОИСК(" ";B2;1)+1) -ПОИСК(" ";B2;1)), а теперь определим последнее значение (Отчество): =ПСТР(B2;ПОИСК(" ";B2;ПОИСК(" ";B2;1)+1)+1;100).

В результате мы разделили ФИО на три слова, что позволит с ними эффективно работать.

Если же значение в ячейке будете делить на две части, то ищете только один пробел (или иной разделитель), а вот чтобы разделить более 4 слов, в формулу добавьте поиск необходимых разделителей.

Читайте также:  Intel high definition hd graphics

Выдергиваем слова с помощью макросов VBA

Рассмотрим два способа разделить текст в ячейке:

  1. Выдергиваем отдельные слова по разделителю;
  2. Делим текст без пробелов.

Способ №1.

Поскольку вас интересует автоматическое деление текста, значит надо написать хорошую функцию на VBA и внедрить ее в рабочую книгу. Для начала переходим на вкладку «Разработчик» и выбираем «Visual Basic» или вызываем эту возможность с помощью горячего сочетания клавиш Alt+F11. (детальнее в статье «Как создать макрос в Excel»).

Создаем новый модуль в меню «Insert» наживаем пункт «Module» и переносим в него нижеприведенный код:

Данная функция является частью надстройки MulTEx

  • Описание, установка, удаление и обновление
  • Полный список команд и функций MulTEx
  • Часто задаваемые вопросы по MulTEx
  • Скачать MulTEx

Вызов команды:
MulTEx -группа Ячейки/ДиапазоныДиапазоныРазбить по строкам/столбцам

Эта команда разбивает данные во всех выделенных ячейках на части, используя в качестве разделителя указанные символ/символы. Главная особенность — в отличие от стандартной команды Excel "Разбить по столбцам", данная команда заносит результат разбиения данных в строки либо столбцы в одну строку/столбец, а не каждую часть в свой столбец. К тому же в стандартной команде Excel нет возможности указать несколько символов — только один.

Диапазон значений — указывается диапазон ячеек, данные которых необходимо разбить. Может быть как одним столбцом/строкой, так и диапазоном, состоящим из нескольких строк и нескольких столбцов.
Разделитель — указывается символ (или группа символов), который будет применен в качестве разделителя. Если разделитель не указан, то появится сообщение, информирующее об этом. В сообщении будет предложено использовать разделитель по умолчанию (Пробел). В случае отказа Вы сможете указать необходимый разделитель. Данные, внесенные ранее не будут утеряны.

Читайте также:  Clear emmc перевод на русский

    Специальный — можно добавить в поле Разделитель один из специальных символов: неразрывный пробел или перенос на строки. Стандартно такие символы невозможно ввести с клавиатуры, но они могут часто встречаться в ячейках. Например, эти символы часто применяется в выгрузках из различных программ(вроде 1С): неразрывный пробел для разделения цифр или слов, которые не надо переносить на строки, а перенос на строки — для разделения основания платежей и иной информации.
    Если в поле Разделитель уже указан какой-либо символ, то при выборе дополнительно специального символа будет показано сообщение:

  • ДА(YES) — в поле Разделитель будет добавлен указанный специальный символ. Указанные ранее символы не будут удалены.
  • НЕТ(NO) — поле Разделитель будет очищено и в него будет помещен только выбранный специальный символ.
  • Поместить результат:

    • Начиная с ячейки — одна ячейка, начиная с которой будет выводиться результат. Не может находиться в Диапазоне значений. В случае, если Диапазон значений состоит из нескольких строк и столбцов, данные будут разбиты в соответствии с расположением данных:
    • В одну ячейку — результирующие значения будут помещены в одну ячейку, разделенные между собой указанным разделителем:

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

    • Перенос на строки — каждое новое результирующее значение в ячейке будет записано с новой строки:
    • Произвольный — любой символ, буква, цифра или группа символов(словосочетания, цифры и т.п.).

    Транспонировать — если Диапазон значений представляет собой столбец, то данные после обработки будут помещены в одну строку. Если Диапазон значений — строка, то данные будут помещены в столбец. Недоступно при выводе результата в одну ячейку.