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

Skip to content

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

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

Разделение текста из одной ячейки на несколько — это задача, с которой время от времени сталкиваются все пользователи Excel. В одной из наших предыдущих статей мы обсуждали, как разделить ячейки в Excel с помощью функции «Текст по столбцам» и «Мгновенное заполнение».  Сегодня мы подробно рассмотрим, как можно разделить текст по ячейкам с помощью формул.

Чтобы разбить текст в Excel, вы обычно используете функции ЛЕВСИМВ (LEFT), ПРАВСИМВ (RIGHT) или ПСТР (MID) в сочетании с НАЙТИ (FIND) или ПОИСК (SEARCH). На первый взгляд, некоторые рассмотренные ниже приёмы могут показаться сложными. Но на самом деле логика довольно проста, и следующие примеры помогут вам разобраться.

Для преобразования текста в ячейках в Excel ключевым моментом является определение положения разделителя в нем. Что может быть таким разделителем? Это запятая, точка с запятой, наклонная черта, двоеточие, тире, восклицательный знак и т.п. И, как мы далее увидим, даже целое слово.

  • Как распределить ФИО по столбцам
  • Как использовать разделители в тексте
  • Разделяем текст по переносам строки
  • Как разделить длинный текст на множество столбцов
  • Как разбить «текст + число» по разным ячейкам
  • Как разбить ячейку вида «число + текст»
  • Разделение ячейки по маске (шаблону)
  • Использование инструмента Split Text

 В зависимости от вашей задачи эту проблему можно решить с помощью функции ПОИСК (без учета регистра букв) или НАЙТИ (с учетом регистра). 

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

Для лучшего понимания пошагово рассмотрим несколько примеров.

Делим текст вида ФИО по столбцам.

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

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

Можно сделать это при помощи инструмента «Текст по столбцам». Об этом методе мы достаточно подробно рассказывали, когда рассматривали, как можно разделить ячейку по столбцам.

Кратко напомним:

На ленте «Данные» выбираем «Текст по столбцам» — с разделителями.

Далее в качестве разделителя выбираем пробел.

Обращаем внимание на то, как разделены наши данные в окне образца.

В следующем окне определяем формат данных. По умолчанию там будет «Общий». Он нас вполне устраивает, поэтому оставляем как есть. Выбираем левую верхнюю ячейку диапазона, в который будет помещен наш разделенный текст. Если нужно оставить в неприкосновенности исходные данные, лучше выбрать B1, к примеру.

В итоге имеем следующую картину:

При желании можно дать заголовки новым столбцам B,C,D.

А теперь давайте тот же результат получим при помощи формул.

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

Итак, чтобы выделить из нашего ФИО фамилию, будем использовать выражение

=ЛЕВСИМВ(A2; ПОИСК(» «;A2;1)-1)

В качестве разделителя мы используем пробел. Функция ПОИСК указывает нам, в какой позиции находится первый пробел. А затем именно это количество букв (за минусом 1, чтобы не извлекать сам пробел) мы «отрезаем» слева от нашего ФИО при помощи ЛЕВСИМВ.

Далее будет чуть сложнее.

Нужно извлечь второе слово, то есть имя. Чтобы вырезать кусочек из середины, используем функцию ПСТР.

=ПСТР(A2; ПОИСК(» «;A2) + 1; ПОИСК(» «;A2;ПОИСК(» «;A2)+1) — ПОИСК(» «;A2) — 1)

Как вы, наверное, знаете, функция Excel ПСТР имеет следующий синтаксис:

ПСТР (текст; начальная_позиция; количество_знаков)

Текст извлекается из ячейки A2, а два других аргумента вычисляются с использованием 4 различных функций ПОИСК:

  • Начальная позиция — это позиция первого пробела  плюс 1:

ПОИСК(» «;A2) + 1

  • Количество знаков для извлечения: разница между положением 2- го и 1- го пробелов, минус 1:

ПОИСК(» «;A2;ПОИСК(» «;A2)+1) — ПОИСК(» «;A2) – 1

В итоге имя у нас теперь находится в C.

Осталось отчество. Для него используем выражение:

=ПРАВСИМВ(A2;ДЛСТР(A2) — ПОИСК(» «; A2; ПОИСК(» «; A2) + 1))

В этой формуле функция ДЛСТР (LEN) возвращает общую длину строки, из которой вы вычитаете позицию 2- го пробела. Получаем количество символов после 2- го пробела, и функция ПРАВСИМВ их и извлекает.

Вот результат нашей работы по разделению фамилии, имени и отчества из одной по отдельным ячейкам.

Распределение текста с разделителями на 3 столбца.

Предположим, у вас есть список одежды вида Наименование-Цвет-Размер, и вы хотите разделить его на 3 отдельных части. Здесь разделитель слов – дефис. С ним и будем работать.

  1. Чтобы извлечь Наименование товара (все символы до 1-го дефиса), вставьте следующее выражение в B2, а затем скопируйте его вниз по столбцу:

=ЛЕВСИМВ(A2; ПОИСК(«-«;A2;1)-1)

Здесь функция мы сначала определяем позицию первого дефиса («-«) в строке, а ЛЕВСИМВ извлекает все нужные символы начиная с этой позиции. Вы вычитаете 1 из позиции дефиса, потому что вы не хотите извлекать сам дефис.

  1. Чтобы извлечь цвет (это все буквы между 1-м и 2-м дефисами), запишите в C2, а затем скопируйте ниже:

=ПСТР(A2; ПОИСК(«-«;A2) + 1; ПОИСК(«-«;A2;ПОИСК(«-«;A2)+1) — ПОИСК(«-«;A2) — 1)

Логику работы ПСТР мы рассмотрели чуть выше.

  1. Чтобы извлечь размер (все символы после 3-го дефиса), введите следующее выражение в D2:

=ПРАВСИМВ(A2;ДЛСТР(A2) — ПОИСК(«-«; A2; ПОИСК(«-«; A2) + 1))

Аналогичным образом вы можете в Excel разделить содержимое ячейки в разные ячейки любым другим разделителем. Все, что вам нужно сделать, это заменить «-» на требуемый символ, например пробел (« »), косую черту («/»), двоеточие («:»), точку с запятой («;») и т. д.

Примечание. В приведенных выше формулах +1 и -1 соответствуют количеству знаков в разделителе. В нашем примере это дефис (то есть, 1 знак). Если ваш разделитель состоит из двух знаков, например, запятой и пробела, тогда укажите только запятую («,») в ваших выражениях и используйте +2 и -2 вместо +1 и -1.

Как разбить текст по переносам строки.

Чтобы разделить слова в ячейке по переносам строки, используйте подходы, аналогичные тем, которые были продемонстрированы в предыдущем примере. Единственное отличие состоит в том, что вам понадобится функция СИМВОЛ (CHAR) для передачи символа разрыва строки, поскольку вы не можете ввести его непосредственно в формулу с клавиатуры.

Предположим, ячейки, которые вы хотите разделить, выглядят примерно так:

Напомню, что перенести таким вот образом текст внутри ячейки можно при помощи комбинации клавиш ALT + ENTER.

Возьмите инструкции из предыдущего примера и замените дефис («-») на СИМВОЛ(10), где 10 — это код ASCII для перевода строки.

Чтобы извлечь наименование товара:

=ЛЕВСИМВ(A2; ПОИСК(СИМВОЛ(10);A2;1)-1)

Цвет:

=ПСТР(A2; ПОИСК(СИМВОЛ(10);A2) + 1; ПОИСК(СИМВОЛ(10);A2; ПОИСК(СИМВОЛ(10);A2)+1) — ПОИСК(СИМВОЛ(10);A2) — 1)

Размер:

=ПРАВСИМВ(A2;ДЛСТР(A2) — ПОИСК(СИМВОЛ(10); A2; ПОИСК(СИМВОЛ(10); A2) + 1))

Результат вы видите на скриншоте выше.

Таким же образом можно работать и с любым другим символом-разделителем. Достаточно знать его код.

Как распределить текст с разделителями на множество столбцов.

Изучив представленные выше примеры, у многих из вас, думаю, возник вопрос: «А что, если у меня не 3 слова, а больше? Если нужно разбить текст в ячейке на 5 столбцов?»

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

Имеем список наименований одежды с различными признаками, перечисленными через дефис. Как видите, таких признаков у нас может быть от 2 до 6. Делим текст в наших ячейках на 6 столбцов так, чтобы лишние столбцы в отдельных строках просто остались пустыми.

Для первого слова (наименования одежды) используем:

=ЛЕВСИМВ(A2; ПОИСК(«-«;A2;1)-1)

Как видите, это ничем не отличается от того, что мы рассматривали ранее. Ищем позицию первого дефиса и отделяем нужное количество символов.

Для второго столбца и далее понадобится более сложное выражение:

=ЕСЛИОШИБКА(ЛЕВСИМВ(ПОДСТАВИТЬ($A2&»-«; ОБЪЕДИНИТЬ(«-«;ИСТИНА;$B2:B2)&»-«;»»;1); ПОИСК(«-«;ПОДСТАВИТЬ($A2&»-«;ОБЪЕДИНИТЬ(«-«;ИСТИНА;$B2:B2)&»-«;»»;1);1)-1);»»)

Замысел здесь состоит в том, что при помощи функции ПОДСТАВИТЬ мы удаляем из исходного содержимого наименование, которое уже ранее извлекли (то есть, «Юбка»). Вместо него подставляем пустое значение «» и в результате имеем «Синий-M-39-42-50». В нём мы снова ищем позицию первого дефиса, как это делали ранее. И при помощи ЛЕВСИМВ вновь выделяем первое слово (то есть, «Синий»).

А далее можно просто «протянуть» формулу из C2 по строке, то есть скопировать ее в остальные ячейки. В результате в D2 получим

=ЕСЛИОШИБКА(ЛЕВСИМВ(ПОДСТАВИТЬ($A2&»-«; ОБЪЕДИНИТЬ(«-«;ИСТИНА;$B2:C2)&»-«;»»;1); ПОИСК(«-«;ПОДСТАВИТЬ($A2&»-«;ОБЪЕДИНИТЬ(«-«;ИСТИНА;$B2:C2)&»-«;»»;1);1)-1);»»)

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

Если же брать больше нечего, то функция ЕСЛИОШИБКА обработает это событие и вставит в виде результата пустое значение «».

Скопируйте формулы по строкам и столбцам, на сколько это необходимо. Результат вы видите на скриншоте.

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

Как разделить ячейку вида ‘текст + число’.

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

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

Метод 1. Подсчитайте цифры и извлеките это количество символов

Самый простой способ разбить выражение, в котором число идет после текста:

Чтобы извлечь числа, вы ищите в строке все возможные числа от 0 до 9, получаете общее их количество и отсекаете такое же количество символов от конца строки.

Если мы работаем с ячейкой ​​A2:

=ПРАВСИМВ(A2;СУММ(ДЛСТР(A2) — ДЛСТР(ПОДСТАВИТЬ(A2; {«0″;»1″;»2″;»3″;»4″;»5″;»6″;»7″;»8″;»9″};»»))))

Чтобы извлечь буквы, вы вычисляете, сколько их у нас имеется. Для этого вычитаем количество извлеченных цифр (C2) из ​​общей длины исходной ячейки A2. После этого при помощи ЛЕВСИМВ отрезаем это количество символов от начала ячейки.

=ЛЕВСИМВ(A2;ДЛСТР(A2)-ДЛСТР(C2))

здесь  A2 – исходная ячейка, а C2 — извлеченное число, как показано на скриншоте:

Метод 2: узнать позицию 1- й цифры в строке

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

{=МИН(ПОИСК({0;1;2;3;4;5;6;7;8;9};A2&»0123456789″))}

Как видите, мы последовательно ищем каждое число из массива {0,1,2,3,4,5,6,7,8,9}. Чтобы избежать появления ошибки если цифра не найдена, мы после содержимого ячейки A2 добавляем эти 10 цифр. Excel последовательно перебирает все символы в поисках этих десяти цифр. В итоге получаем опять же массив из 10 цифр — номеров позиций, в которых они нашлись. И из них функция МИН выбирает наименьшее число. Это и будет та позиция, с которой начинается группа чисел, которую нужно отделить от основного содержимого.

Также обратите внимание, что это формула массива и ввод её нужно заканчивать не как обычно, а комбинацией клавиш CTRL + SHIFT + ENTER.

Как только позиция первой цифры найдена, вы можете разделить буквы и числа, используя очень простые формулы ЛЕВСИМВ и ПРАВСИМВ.

Чтобы получить текст:

=ЛЕВСИМВ(A2; B2-1)

Чтобы получить числа:

=ПРАВСИМВ(A2; ДЛСТР(A2)-B2+1)

Где A2 — исходная строка, а B2 — позиция первого числа.

Чтобы избавиться от вспомогательного столбца, в котором мы вычисляли позицию первой цифры, вы можете встроить МИН в функции ЛЕВСИМВ и ПРАВСИМВ:

Для вытаскивания текста:

=ЛЕВСИМВ(A2; МИН(ПОИСК({0;1;2;3;4;5;6;7;8;9};A2&»0123456789″))-1)

Для чисел:

=ПРАВСИМВ(A2; ДЛСТР(A2)-МИН(ПОИСК({0;1;2;3;4;5;6;7;8;9};A2&»0123456789″))+1)

Этого же результата можно достичь и чуть иначе.

Сначала мы извлекаем из ячейки числа при помощи вот такого выражения:

=ПРАВСИМВ(A2;СУММ(ДЛСТР(A2) -ДЛСТР(ПОДСТАВИТЬ(A2; {«0″;»1″;»2″;»3″;»4″;»5″;»6″;»7″;»8″;»9″};»»))))

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

А затем уже берём оставшееся:

=ЛЕВСИМВ(A2;ДЛСТР(A2)-ДЛСТР(C2))

Как видите, результат тот же. Можете воспользоваться любым способом.

Как разделить ячейку вида ‘число + текст’.

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

=ЛЕВСИМВ(A2;СУММ(ДЛСТР(A2) — ДЛСТР(ПОДСТАВИТЬ(A2; {«0″;»1″;»2″;»3″;»4″;»5″;»6″;»7″;»8″;»9″};»»))))

Она аналогична рассмотренной в предыдущем примере, за исключением того, что вы используете функцию ЛЕВСИМВ вместо ПРАВСИМВ, чтобы получить число теперь уже из левой части выражения.

Теперь, когда у вас есть числа, отделите буквы, вычитая количество цифр из общей длины исходной строки:

=ПРАВСИМВ(A2;ДЛСТР(A2)-ДЛСТР(B2))

Где A2 — исходная строка, а B2 — искомое число, как показано на снимке экрана ниже:

Как разбить текст по ячейкам по маске (шаблону).

Эта опция очень удобна, когда вам нужно разбить список схожих строк на некоторые элементы или подстроки. Сложность состоит в том, что исходный текст должен быть разделен не при каждом появлении определенного разделителя (например, пробела), а только при некоторых определенных вхождениях. Следующий пример упрощает понимание.

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

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

Решением является разбиение строки по следующей маске: * ERROR: * Exception: *

Здесь звездочка (*) представляет любое количество символов.

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

То есть в данном случае в качестве разделителя по столбцам выступают не отдельные символы, а целые слова.

Итак, в начале ищем позицию первого разделителя.

=ПОИСК(«ERROR:»;A2;1)

Затем аналогичным образом находим позицию, в которой начинается второй разделитель:

=ПОИСК(«Exception:»;A2;1)

Итак, для ячейки A2 шаблон выглядит следующим образом:

С 1 по 20 символ – дата и время. С 21 по 26 символ – разделитель “ERROR:”. Далее – код ошибки. С 31 по 40 символ – второй разделитель “Exception:”. Затем следует описание ошибки.

Таким образом, в первый столбец мы поместим первые 20 знаков:

=—ЛЕВСИМВ(A2;ПОИСК(«ERROR:»;A2;1)-1)

Обратите внимание, что мы взяли на 1 позицию меньше, чем начало первого разделителя. Кроме того, чтобы сразу конвертировать всё это в дату, ставим перед формулой два знака минус. Это автоматически преобразует цифры в число, а дата как раз и хранится в виде числа. Остается только установить нужный формат даты и времени стандартными средствами Excel.

Далее нужно получить код:

=ПСТР(A2;ПОИСК(«ERROR:»;A2;1)+6;ПОИСК(«Exception:»;A2;1)-(ПОИСК(«ERROR:»;A2;1)+6))

Думаю, вы понимаете, что 6 – это количество знаков в нашем слове-разделителе «ERROR:».

Ну и, наконец, выделяем из этой фразы пояснение:

=ПРАВСИМВ(A2;ДЛСТР(A2)-(ПОИСК(«Exception:»;A2;1)+10))

Аналогично добавляем 10 к найденной позиции второго разделителя «Exception:», чтобы выйти на координаты первого символа сразу после разделителя. Ведь функция говорит нам только то, где разделитель начинается, а не заканчивается.

Таким образом, ячейку мы распределили по 3 столбцам, исключив при этом слова-разделители.

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

Как разделить ячейки в Excel с помощью функции разделения текста Split Text.

Альтернативный способ разбить столбец в Excel — использовать функцию разделения текста, включенную в надстройку Ultimate Suite for Excel. Она предоставляет следующие возможности:

  • Разделить ячейку по символу-разделителю.
  • Разделить ячейку по нескольким разделителям.
  • Разделить ячейку по маске (шаблону).

Чтобы было понятнее, давайте более подробно рассмотрим каждый вариант по очереди.

Разделить ячейку по символу-разделителю.

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

Для этого примера возьмем строки шаблона Товар-Цвет-Размер , который мы использовали в первой части этого руководства. Как вы помните, мы разделили их на 3 разных столбца, используя 3 разные формулы . А вот как добиться того же результата за 2 быстрых шага:

  1. Предполагая, что у вас установлен Ultimate Suite , выберите ячейки, которые нужно разделить, и щелкните значок «Разделить текст (Split Text)» на вкладке «Ablebits Data».

  1. Панель Разделить текст откроется в правой части окна Excel, и вы выполните следующие действия:
    • Разверните группу «Разбить по символам (Split by Characters и выберите один из предопределенных разделителей или введите любой другой символ в поле «Пользовательский (Custom .
    • Выберите, как именно разбивать ячейки: по столбцам или строкам.
    • Нажмите кнопку «Разделить (Split)» .

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

Готово! Задача, которая требовала 3 формул и 5 различных функций, теперь занимает всего пару секунд и одно нажатие кнопки.

Разделить ячейку по нескольким разделителям.

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

Например, чтобы разделить предложение на части, используя запятые и союзы, активируйте инструмент «Разбить по строкам (Split by Strings)» и введите разделители, по одному в каждой строке:

В данном случае в качестве разделителей мы используем запятую и союз “или”.

В результате исходная фраза разделяется при появлении любого разделителя:

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

А вот еще один пример. Предположим, вы импортировали столбец дат из внешнего источника, и выглядит он следующим образом:

5.1.2021 12:20

9.8.2021 14:50

Этот формат не является обычным для Excel, и поэтому ни одна из функций даты не распознает здесь какие-либо элементы даты или времени. Чтобы разделить день, месяц, год, часы и минуты на отдельные ячейки, введите следующие символы в поле Spilt by strings:

  • Точка (.) Для разделения дня, месяца и года
  • Двоеточие (:) для разделения часов и минут
  • Пробел для разграничения даты и времени

Нажмите кнопку Split, и вы сразу получите результат:

Разделить ячейки по маске (шаблону).

Эта опция очень удобна, когда вам нужно разбить список однородных строк на некоторые элементы или подстроки. 

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

Предположим, у вас есть список строк, извлеченных из некоторого файла журнала. Чуть выше в этой статье мы разбивали этот текст по ячейкам при помощи формул. А сейчас используем специальный инструмент. И вы сами решите, какой из способов удобнее и проще.

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

Решением является разбиение строки по следующей маске: 

* ERROR:* Exception: *

Где звездочка (*) представляет любое количество символов.

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

А теперь нажмите кнопку «Разбить по маске (Split by Mask)» на панели «Split Text» , введите маску в соответствующее поле и нажмите «Split».
Результат будет примерно таким:

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

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

* * ERROR:* Exception: *

Проще говоря, маска указывает надстройке разделить исходные строки на 4 части:

  • Все символы перед 1-м пробелом в строке (дата)
  • Символы между 1-м пробелом и словом ERROR: (время)
  • Текст между ERROR: и Exception: (код ошибки)
  • Все, что идет после Exception: (текст описания)

Думаю, вы согласитесь, что использование надстройки Split Text гораздо быстрее и проще, нежели использование формул.

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

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

Читайте также:

Поиск ВПР нескольких значений по нескольким условиям В статье показаны способы поиска (ВПР) нескольких значений в Excel на основе одного или нескольких условий и возврата нескольких результатов в столбце, строке или в отдельной ячейке. При использовании Microsoft…
Формат времени в Excel Вы узнаете об особенностях формата времени Excel, как записать его в часах, минутах или секундах, как перевести в число или текст, а также о том, как добавить время с помощью…
Как сделать диаграмму Ганта Думаю, каждый пользователь Excel знает, что такое диаграмма и как ее создать. Однако один вид графиков остается достаточно сложным для многих — это диаграмма Ганта.  В этом кратком руководстве я постараюсь показать…
Как сделать автозаполнение в Excel В этой статье рассматривается функция автозаполнения Excel. Вы узнаете, как заполнять ряды чисел, дат и других данных, создавать и использовать настраиваемые списки в Excel. Эта статья также позволяет вам убедиться, что вы…
Функция ИНДЕКС в Excel — 6 примеров использования В этом руководстве вы найдете ряд примеров формул, демонстрирующих наиболее эффективное использование ИНДЕКС в Excel. Из всех функций Excel, возможности которых часто недооцениваются и используются недостаточно, ИНДЕКС определенно занимает место…
Быстрое удаление пустых столбцов в Excel В этом руководстве вы узнаете, как можно легко удалить пустые столбцы в Excel с помощью макроса, формулы и даже простым нажатием кнопки. Как бы банально это ни звучало, удаление пустых…

Как разбить содержимое многострочной ячейки на отдельные строки / столбцы в Excel?

Предположим, у вас есть многострочное содержимое ячейки, разделенное Alt + Enter, и теперь вам нужно разделить многострочное содержимое на отдельные строки или столбцы, что вы можете сделать? В этой статье вы узнаете, как быстро разделить содержимое многострочной ячейки на отдельные строки или столбцы.

Разделить содержимое многострочной ячейки на отдельные столбцы с помощью функции «Текст в столбцы»
Легко разделяйте содержимое многострочных ячеек на отдельные строки или столбцы с Kutools for Excel


Разделить содержимое многострочной ячейки на отдельные столбцы с помощью функции «Текст в столбцы»

С помощью функции «Текст в столбцы» вы можете разделить содержимое многострочной ячейки на отдельные столбцы.

1. Выберите ячейки с многострочным содержимым, которые нужно разделить на отдельные столбцы, затем щелкните Данные > Текст в столбцы. Смотрите скриншот:

2. В первом Мастер преобразования текста в столбцы диалоговое окно, выберите разграниченный вариант, а затем щелкните Download кнопку.

3. В секунду Мастер преобразования текста в столбцы диалоговое окно, только отметьте Другое коробка, держи другой ключ и введите номер 0010 в следующее пустое поле. Затем нажмите кнопку Download кнопка. Смотрите скриншот:

4. В третьем Мастер преобразования текста в столбцы диалоговом окне выберите ячейку для размещения разделенного содержимого в Направление поле и, наконец, щелкните Завершить кнопку.

Затем содержимое выбранных многострочных ячеек разделяется на отдельные столбцы, как показано ниже.


Разделите содержимое многострочной ячейки на отдельные строки или столбцы с помощью Kutools for Excel

Если вы хотите разделить содержимое многострочной ячейки на несколько строк, функция «Текст в столбец» может вам не помочь. Но Разделить клетки полезности Kutools for Excel может помочь вам быстро разделить содержимое многострочной ячейки на отдельные строки или столбцы. Пожалуйста, сделайте следующее.

1. Выберите ячейки с многострочным содержимым, которые нужно разделить на отдельные строки или столбцы, затем щелкните Кутулс > Слияние и разделение > Разделить клетки. Смотрите скриншот:

2. в Разделить клетки диалоговом окне необходимо сделать следующее:

  • (1) Если вы хотите разбить ячейки на строки, выберите Разделить на строки вариант, в противном случае выберите Разделить на столбцы опцию.
  • (2) В Укажите разделитель раздел, выберите Новая линия вариант
  • (3) Наконец, нажмите кнопку OK кнопка

3. В следующем всплывающем диалоговом окне выберите пустую ячейку для размещения разделенного текста, а затем щелкните значок OK кнопку.

Вы можете увидеть результат разделения, как показано на скриншотах ниже.

  Если вы хотите получить бесплатную пробную версию (30-день) этой утилиты, пожалуйста, нажмите, чтобы загрузить это, а затем перейдите к применению операции в соответствии с указанными выше шагами.


Легко разделяйте содержимое многострочных ячеек на отдельные строки или столбцы с Kutools for Excel


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Комментарии (23)


Оценок пока нет. Оцените первым!

Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Еще…Меньше

Windows: 2208 (сборка 15601)
Mac: 16.65 (сборка 220911)
Веб: представлено 15 сентября 2022
г.
iOS: 2.65 (сборка 220905)
Android: 16.0.15629

Разделяет текстовые строки с помощью разделителей столбцов и строк.

Функция TEXTSPLIT работает так же, как мастер преобразования текста в столбцы, но в виде формулы. Она позволяет разбивать на столбцы или строки. Эта функция обратна функции ОБЪЕДИНИТЬ. 

Синтаксис

=ТЕКСТРАЗД(text,col_delimiter,[row_delimiter],[ignore_empty], [match_mode], [pad_with])

Синтаксис функции ТЕКСТРАЗД поддерживает следующие аргументы.

  • текст       Текст, который нужно разделить. Обязательный.

  • разделитель_столбцов       Текст, помечающий точку, в которой текст разлит по столбцам.

  • разделитель_строк       Текст, помечающий точку, в которую следует слить текст вниз по строкам. Необязательный.

  • игнорировать_пустые       Укажите значение TRUE, чтобы игнорировать последовательные разделители. По умолчанию имеет значение FALSE, которое создает пустую ячейку. Необязательный.

  • match_mode    Укажите значение 1, чтобы выполнить совпадение без учета регистра. По умолчанию используется значение 0, которое выполняет сопоставление с учетом регистра. Необязательный.

  • заполняющее_значение           Значение, которым нужно дополнить результат. Значение по умолчанию: #Н/Д.

Замечания

Если имеется несколько разделителей, необходимо использовать константу массива. Например, для разделения одновременно с помощью запятой и точки используйте формулу =ТЕКСТРАЗД(A1;{«,»,».»}).

Примеры

Скопируйте пример данных и вставьте их в ячейку A1 нового листа Excel. При необходимости измените ширину столбцов, чтобы видеть все данные. 

Разделите имя и фразу с помощью общего разделителя.

Данные

Дарья Леонидовна Санникова

Быть или не быть

Формулы

=TEXTSPLIT(A2, » «)

=TEXTSPLIT(A3, » «)

На следующем рисунке показаны результаты.

Разделяет имя и фразу пробелом

Разделите константы массива в A2 на массив 2X3.

Данные

1,2,3;4,5,6

Формулы

=ТЕКСТРАЗД(A2;»,»,»;»)

На следующем рисунке показаны результаты.

Excel TextSplit Example 2

Данные

Делай. Или не делай. Не пробуй. – Аноним

Формулы

=ТЕКСТРАЗД(A2;».»)

=ТЕКСТРАЗД(A2;{«.»,»-«})

=ТЕКСТРАЗД(A2;{«.»,»-«};;ЛОЖЬ)

На следующем рисунке показаны результаты.

Результаты примера 2

Данные

Делай. Или не делай. Не пробуй. – Аноним

Формулы

=ТЕКСТРАЗД(A2;;».»)

На следующем рисунке показаны результаты.

Результаты примера 3

Данные

Делай. Или не делай. Не пробуй. – Аноним

Формулы

=ТЕКСТРАЗД(A2;;{«.»,»-«})

На следующем рисунке показаны результаты.

Результаты примера 4

Данные

Делай. Или не делай. Не пробуй. – Аноним

Формулы

=ТЕКСТРАЗД(A2;;{«.»,»-«};ИСТИНА)

На следующем рисунке показаны результаты.

Результаты примера 5

Совет      Чтобы удалить ошибку #Н/Д, используйте функцию ЕСНД. Можно также добавить аргумент «заполняющее_значение».

Данные

Делай. Или не делай. Не пробуй. – Аноним

Формулы

=ТЕКСТРАЗД(A2;» «,».»;ИСТИНА)

На следующем рисунке показаны результаты.

Результаты примера 6

См. также

Текстовые функции (справочник)

Функция ТЕКСТДО

Функция ТЕКСТПОСЛЕ

Функция ОБЪЕДИНИТЬ

Функция CONCAT

Нужна дополнительная помощь?

Большинство опытных пользователей Excel умеют пользоваться встроенным интерфейсным средством для разбивки текстовой строки на составляющие с использованием символа разделителя. В некоторых ситуациях может оказаться удобнее разобрать текст не с помощью интерфейса, а с использованием формул. Как ни странно, но Excel не имеет встроенной стандартной функции рабочего листа для проведения таких действий. Это тем более непонятно, так как VBA поддерживает стандартную функцию Split, облегчающую решение подобных задач.

В примере созданы 2 сложные формулы для разбивки текста по столбцам и строкам. Их также можно использовать для выборки текстовой составляющей по порядковому номеру.

Напомним, что интерфейсное средство “Текст по столбцам” доступно через меню и ленту Excel Данные Текст по столбцам.

В файле-примере показано два типа формулы для разделения текста на составляющие:

  • текст по столбцам (диапазон B5:K6)
  • текст по строкам (диапазон A10:B19)

В качестве разделителя текста используется символ “,” (запятая). В служебных целях задействованы еще два символа ” ” (математические знаки “меньше” и “больше”). Эти символы не могут находится в исходном тексте, в противном случае формула будет работать неверно. И разделитель, и служебные символы можно заменить на любые другие, главное, чтобы они не могли быть задействованы в исходном тексте. Для замены исправьте константы во всех местах формулы.

Формула в ячейке B5 и далее по столбцам обрабатывает исходный текст из ячейки A5:

Формула в ячейке A10 и далее по строкам обрабатывает исходный текст из ячейки A9:

Формулы ссылаются только на исходный текст и не требуют наличия других предварительно вычисленных составляющих. Варианты отличаются только автоматическим определением порядкового номера текстовой составляющей, в первом случае – это подформула для вычисления номера от количества столбцов: COLUMNS($B:B); во втором – от количества строк: ROWS($10:10). При копировании диапазон столбцов и строк автоматически расширяется, вычисляя таким образом нужное значение. Вместо этой подформулы можно задать константу или переменную, определяющую требуемый номер. Из результатирующих текстовых значений убираются лишние пробелы при помощи функции TRIM().

Наверняка можно сделать формулу покороче, используя другие методы поиска. Это просто наш вариант – оригинальный, нигде не подсмотренный

Делим слипшийся текст на части

Итак, имеем столбец с данными, которые надо разделить на несколько отдельных столбцов. Самые распространенные жизненные примеры:

  • ФИО в одном столбце (а надо – в трех отдельных, чтобы удобнее было сортировать и фильтровать)
  • полное описание товара в одном столбце (а надо – отдельный столбец под фирму-изготовителя, отдельный – под модель для построения, например, сводной таблицы)
  • весь адрес в одном столбце (а надо – отдельно индекс, отдельно – город, отдельно – улица и дом)
  • и т.д.

Способ 1. Текст по столбцам

Выделите ячейки, которые будем делить и выберите в меню Данные – Текст по столбцам (Data – Text to columns) . Появится окно Мастера разбора текстов:

На первом шаге Мастера выбираем формат нашего текста. Или это текст, в котором какой-либо символ отделяет друг от друга содержимое наших будущих отдельных столбцов (с разделителями) или в тексте с помощью пробелов имитируются столбцы одинаковой ширины (фиксированная ширина).

На втором шаге Мастера, если мы выбрали формат с разделителями (как в нашем примере) – необходимо указать какой именно символ является разделителем:

Если в тексте есть строки, где зачем-то подряд идут несколько разделителей (несколько пробелов, например), то флажок Считать последовательные разделители одним (Treat consecutive delimiters as one) заставит Excel воспринимать их как один.

Выпадающий список Ограничитель строк (Text Qualifier) нужен, чтобы текст заключенный в кавычки (например, название компании “Иванов, Манн и Фарбер”) не делился по запятой
внутри названия.

И, наконец, на третьем шаге для каждого из получившихся столбцов, выделяя их предварительно в окне Мастера, необходимо выбрать формат:

  • общий – оставит данные как есть – подходит в большинстве случаев
  • дата – необходимо выбирать для столбцов с датами, причем формат даты (день-месяц-год, месяц-день-год и т.д.) уточняется в выпадающем списке
  • текстовый – этот формат нужен, по большому счету, не для столбцов с ФИО, названием города или компании, а для столбцов с числовыми данными, которые Excel обязательно должен воспринять как текст. Например, для столбца с номерами банковских счетов клиентов, где в противном случае произойдет округление до 15 знаков, т.к. Excel будет обрабатывать номер счета как число:

Кнопка Подробнее (Advanced) позволяет помочь Excel правильно распознать символы-разделители в тексте, если они отличаются от стандартных, заданных в региональных настройках.

Способ 2. Как выдернуть отдельные слова из текста

Если хочется, чтобы такое деление производилось автоматически без участия пользователя, то придется использовать небольшую функцию на VBA, вставленную в книгу. Для этого открываем редактор Visual Basic:

  • в Excel 2003 и старше – меню Сервис – Макрос – Редактор Visual Basic(Tools – Macro – Visual Basic Editor)
  • в Excel 2007 и новее – вкладка Разработчик – Редактор Visual Basic (Developer – Visual Basic Editor) или сочетание клавиш Alt+F11

Вставляем новый модуль (меню Insert – Module) и копируем туда текст вот этой пользовательской функции:

Теперь можно найти ее в списке функций в категории Определенные пользователем (User Defined) и использовать со следующим синтаксисом:

=SUBSTRING(Txt; Delimeter; n)

  • Txt – адрес ячейки с текстом, который делим
  • Delimeter – символ-разделитель (пробел, запятая и т.д.)
  • n – порядковый номер извлекаемого фрагмента

Способ 3. Разделение слипшегося текста без пробелов

Тяжелый случай, но тоже бывает. Имеем текст совсем без пробелов, слипшийся в одну длинную фразу (например ФИО “ИвановИванИванович”), который надо разделить пробелами на отдельные слова. Здесь может помочь небольшая макрофункция, которая будет автоматически добавлять пробел перед заглавными буквами. Откройте редактор Visual Basic как в предыдущем способе, вставьте туда новый модуль и скопируйте в него код этой функции:

Теперь можно использовать эту функцию на листе и привести слипшийся текст в нормальный вид:

Разбить по строкам/столбцам

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

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

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

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

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

Поместить результат:

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

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

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

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

Как разделить текст в ячейке Excel?

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

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

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

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

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

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

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

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

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

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

И если с первыми двумя словами понятно, что и как разделять, то разделителя для последнего слова нет, а это значит что нужно указать в качестве аргумента условно большое количество символов, как аргумент «число_знаков» для функции ПСТР, например, 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 слов, в формулу добавьте поиск необходимых разделителей.

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

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

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

Способ №1.

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

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

Excel: разделяем слипшийся текст

Случается, что содержание одного столбца нужно разбить на несколько. Например:

  • слишком обширное описание товара (а нужно, чтоб наименование, характеристики и актуальное наличие были разбиты);
  • полный адрес в одном столбце (а нужно, чтоб индекс, область, район и прочие данные были разбиты);
  • ФИО в одном столбце (а нужно – в отдельных).

Какая бы ситуация ни сложилась у вас, есть несколько способов разделить слипшийся текст.

Задача №1: Разбить текст по столбцам

Решение: Выделите нужные ячейки, перейдите в меню ДанныеТекст по столбцам.

В появившемся окне Мастер текстов (разбора) укажите формат данных:

  • с разделителями – в случае, когда содержимое будущих отдельных столбцов разделяется каким-либо символом (укажите, каким именно).

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

  • фиксированной ширины – если вы хотите задать произвольную ширину столбца:

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

  • Общий – самый универсальный, сохранит данные в исходном виде.
  • Дата – для столбцов, где указан день-месяц-год (порядок значений вы также выберете самостоятельно).
  • Текстовый – незаменим для ячеек с числовыми данными, которые Excel должен воспринимать как текст. Пример: если столбцу с номерами банковских счетов не назначить текстовый формат, цифры округлятся до 15-ти символов – офис распознает их как числа.

Задача №2: Выборочно выдернуть слова из текста

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

Function Substring(Txt, Delimiter, n) As String
Dim x As Variant
x = Split(Txt, Delimiter)
If n > 0 And n – 1
Substring = x(n – 1)
Else
Substring = “”
End If
End Function

Далее идем в меню Формулы → Вставить функцию , выбираем категорию «Определенные пользователем» , применяем синтаксис =SUBSTRING и указываем значения:

  • Txt – адрес ячейки с нужным текстом.
  • Delimeter – разделяющий знак (запятая, тире, пробел и т.д.).
  • N – порядковый номер фрагмента, который нужно «выдернуть».

Задача №3: Разделить текст без пробелов

Если о знаках-разделителях речи даже не идет – то есть текст абсолютно слипшийся (например, ФИО «ПетровскийАндрейИванович»), используйте следующую макрофункцию:

Function CutWords(Txt As Range) As String
Dim Out$
If Len(Txt) = 0 Then Exit Function
Out = Mid(Txt, 1, 1)

For i = 2 To Len(Txt)
If Mid(Txt, i, 1) Like “[a-zа-я]” And Mid(Txt, i + 1, 1) Like “[A-ZА-Я]” Then
Out = Out & Mid(Txt, i, 1) & ” ”
Else
Out = Out & Mid(Txt, i, 1)
End If
Next i
CutWords = Out
End Function

CutWords аналогично добавляется в редактор Visual Basic , потом выбирается среди функций, определенных пользователем, и автоматически расставляет пробелы перед заглавными буквами.

Читайте нас дальше, чтобы работа с Excel давалась ещё легче.

Как разделить текст по ячейкам формула в Excel

Часто приходится оптимизировать структуру данных после импорта в Excel. Некоторые разные значения попадают в одну и туже ячейку образуя целую строку как одно значение. Возникает вопрос: как разбить строку на ячейки в Excel. Программа располагает разными поисковыми функциями: одни ищут по ячейках другие ищут по содержимому ячеек. Ведь выполнять поиск по текстовой строке, которая содержится в ячейке ¬– это также распространенная потребность пользователей Excel. Их мы и будем использовать для разделения строк.

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

Допустим на лист Excel были импортированные данные из другой программы. Из-за несовместимости структуры данных при импорте некоторые значение из разных категорий были внесены в одну ячейку. Необходимо из этой ячейки отделить целые числовые значения. Пример таких неправильно импортированных данных отображен ниже на рисунке:

Сначала определим закономерность, по которой можно определить, что данные из разных категорий, несмотря на то, что они находятся в одной и той же строке. В нашем случае нас интересуют только числа, которые находятся вне квадратных скобок. Каким способом можно быстро выбрать из строк целые числа и поместить их в отдельные ячейки? Эффективным решением является гибкая формула основана на текстовых функциях.

В ячейку B3 введите следующую формулу:

Теперь скопируйте эту формулу вдоль целого столбца:

Выборка чисел из строк в отдельные ячейки.

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

Функция ПСТР возвращает текстовое значение содержащие определенное количество символов в строке. Аргументы функции:

  1. Первый аргумент – это ссылка на ячейку с исходным текстом.
  2. Второй аргумент – это позиция первого символа, с которого должна начинаться разделенная строка.
  3. Последний аргумент – это количество символов, которое должна содержать разделенная строка.

С первым аргументом ПСТР все понятно – это ссылка на ячейку A3. Второй аргумент мы вычисляем с помощью функции НАЙТИ(“]”;A3)+2. Она возвращает очередной номер символа первой закрывающейся квадратной скобки в строке. И к этому номеру мы добавляем еще число 2, так как нам нужен номер символа после пробела за квадратной скобкой. В последнем аргументе функция вычисляет какое количество символов будет содержать разделенная строка после разделения, учитывая положение квадратной скобки.

Обратите внимание! Что в нашем примере все исходные и разделенные строки имеют разную длину и разное количество символов. Именно поэтому мы называли такую формулу – гибкой, в начале статьи. Она подходит для любых условий при решении подобного рода задач. Гибкость придает ей сложная комбинация из функций НАЙТИ. Пользователю формулы достаточно определить закономерность и указать их в параметрах функций: будут это квадратные скобки либо другие разделительные знаки. Например, это могут быть пробелы если нужно разделить строку на слова и т.п.

В данном примере функция НАЙТИ во втором аргументе определяет положение относительно первой закрывающейся скобки. А в третьем аргументе эта же функция вычисляет положение нужного нам текста в строке относительно второй открывающийся квадратной скобки. Вычисление в третьем аргументе более сложное и оно подразумевает вычитание одной большей длинны текста от меньшей. А чтобы учитывать еще 2 пробела следует вычитать число 3. В результате чего получаем правильное количество символов в разделенной строке. С помощью такой гибкой формулы можно делать выборку разной длинны разделенного текста из разных длинны исходных строк.

Как сделать несколько строк в одной ячейке Excel

Microsoft Excel входит в стандартный пакет программ Microsoft Office. Это привычное приложение для с.

Как написать несколько строк в одной ячейке Excel

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

Как разделить данные в ячейке Excel

Если Вам во время работы с электронной таблицей в офисном пакете от Microsoft возникает необходимость разнести содержимое одной ячейки по разным колонкам для большей наглядности, то нет ничего проще. Для того, чтобы разделить данные в ячейке Excel, надо выделить её:

Как разделить данные в ячейке в экселе

Затем в главном меню программы открываем раздел «Данные» и находим кнопочку «Текст по столбцам». Появится специальный Мастер распределения текста:

мастер распределения текста по столбцам в excel

На первом шаге ставим флаг на формат данных «с разделителями».
Нажимаем на «Далее»:

укажите символ разделитель

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

как разнести содержимое ячейки по столбцам

На заключительном этапе ничего не меняем и нажимаем на кнопку «Готово». Проверяем результат:

разделение ячейки в excel

Как Вы можете заметить,того, разделить содержимое ячейки по столбцам в Экселе очень просто — главное правильно указать разделитель. Всем добра!

Если ячейка содержит большой текст или сложную формулу, но с ошибками, то нет смысла удалять их вводить все данные заново. Рациональнее их просто отредактировать.

Для редактирования значений в Excel предусмотрен специальный режим. Он максимально прост, но гармонично объединил в себе толь самые полезные функции текстового редактора. Ничего лишнего в нем нет.

Редактирование строки текста в ячейках

Редактировать содержимое ячеек можно двумя способами:

  1. 1 Из строки формул. Щелкните по ячейке, в которой необходимо отредактировать данные. В строке формул отобразиться содержимое, которое доступно для редактирования. Сделайте необходимые изменения, после чего нажмите Enter или кликните по кнопке «Ввод», которая размещена в начале строки формул. Для отмены изменений можно нажать клавишу «Esc» или кнопку «Отмена» (возле кнопки «Ввод»).
  2. Строка формул.

  3. 2 Из самой ячейки. Перейдите на ячейку и нажмите клавишу F2 или сделайте по ней двойной щелчок мышкой. Тогда в ячейке появится курсор клавиатуры, а ее размер изменится на время редактирования. После всех изменений нажмите Enter или Tab или кликните мышкой на любую другую ячейку. Для отмены редактирования нажмите клавишу «Esc».

Редактирование текста в ячейке.

Примечание. При редактировании не забывайте о кнопках отмены / повтора действий на панели быстрого доступа. Или о комбинациях клавиш CTRL+Z и CTRL+Y.



Как сделать несколько строк в ячейке Excel?

В режиме редактирования, ячейки обладают функционалом простейшего текстового редактора. Главное отличие – это разбиение текста на строки.

Внимание!
Чтобы разбить текст на строки в одной ячейке Excel нужно нажать комбинацию клавиш Alt+Enter. Тогда вы сможете перейти на новую строку в ячейке. В том месте текста, где находится курсор клавиатуры, появится перенос строки и соответственно начало новой.

В обычных редакторах текст делится на строки нажатием клавиши Enter, но в Excel данное действие выполняет функцию подтверждения вода данных и переход на следующую ячейку. Поэтому как написать несколько строк в ячейке Excel жмите Alt+Enter.

Разделение текста на строки.

Обратите внимание, что после разделения одной строки в ячейке на две и более с помощью клавиш Alt+Enter, то автоматически активируется опция «формат ячеек»-«выравнивание»-«перенос по словам». Притом что сама эта функция не разбивает строку на слова, а оптимизирует ее отображение.

Перенос по словам.

Режим редактирования

В режиме редактирования работают все стандартные комбинации клавиш управления курсором клавиатуры, как и в других программах Windows:

  1. Клавиша «DELETE» удаляет символ справа, а «Backspace» слева.
  2. CTRL+ «стрелка влево» переход на начало слова, а CTRL+ «стрелка вправо» – в конец слова.
  3. «HOME» смещает курсор клавиатуры в начало строки, а «END» – в конец.
  4. Если в тексте более одной строки то комбинации CTRL+HOME и CTRL+END перемещают курсор в начало или в конец целого текста.

Примечание. Точно так же редактируются: формулы, функции, числа, даты и логические значения.

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

Стили текста.

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

Читайте так же: как перевести число и сумму прописью в Excel.

Разделение текста на столбцы с помощью мастера распределения текста по столбцам

​Смотрите также​ например, «Постоянные» в​ ячейки стоят под​ ячейку очень просто.​ третий столбик?​

  1. ​ текст в Excel»​ Заходим на вкладку​ помощью специального инструмента,​

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

  3. ​ хотя над ними​​ к некоторым ухищрениям.​ испытывают проблемы при​​. Данные можно предварительно​​С помощью мастера распределения​​ ячейке А2 и​​ формулами, то это​​ Используйте автофигуры и​

  4. ​Nick sergeech​​ тут.​​ «Граница» и выбираем​ делается это уже​​ помощью инструмента «Фигуры».​​ мыши.​​ Excel на две,​​Из появившегося выпадающего меню​ шапку таблицы, то​​ мы не производили​​ Это так, потому​

  5. ​ попытке разделить ячейку​​ просмотреть в окне​​ текста по столбцам​

  6. ​ «Временные» в ячейке​​ вообще грех !​​ простую линию (​: Отменяешь разделение ячеек,​Получилось так.​

  7. ​ диагональ, здесь же​​ после простым перемещением​​ Однако стоит учитывать,​В контекстном меню выберите​ то, к сожалению,​

  8. ​ выберите строку «Объединить​​ он подойдет как​​ никаких действий. Чтобы​

support.office.com

Четыре способа разделения ячейки на две в Excel

​ что ячейка –​ в Excel на​Образец разбора данных​ текст, содержащийся в​ В2. На вид​Если таблицу с​ Ячейка К9. Очень​ потом в первом,​Если нужно​ можно выбрать ширину​ данных. В остальном​ что это оптимальный​ опцию «Формат ячеек».​ каких-то специальных инструментов​ по строкам».​ никогда кстати, но​

Как разделить ячейку на две

​ увидеть это более​ первичный структурный элемент,​ две. В этой​.​ одной ячейке, можно​ будет как будто​ объединенными ячейками вы​ хорошо видно что​ втором и четвертом​разделить ячейку Excel пополам​ этой линии и​ же выполнение поставленной​ вариант только в​Появится окно, в котором​ для этого не​Теперь вместо двух столбцов​ для других целей​ наглядно, рекомендуется выделить​ и она не​

Способ 1: через объединение ячеек

​ статье будет рассказано​Нажмите кнопку​ разделить на несколько.​ в строке 2​ отдадите программисту переделать​ используется обычная линия)​ объединяешь по три​, то нужно объединить​ цвет. Нажимаем кнопку​ задачи не требует​ том случае, если​ необходимо перейти на​ предусмотрено. Вам необходимо​ у вас один.​ лучше воспользоваться другими​

  1. ​ границы ячеек. Для​ может быть разбита​ как раз об​
  2. ​Далее​Выделите ячейку или столбец​ ячейка разделена на​
  3. ​ или подправить, то​
  4. ​аналогичные темы​ ячейки​ ячейки двух столбцов,​ «OK».​ много знаний в​

в excel разделить ячейку на две

​ ваша ячейка образована​ вкладку «Граница».​ будет пользоваться обычным​ Именно в нем​ способами. Поэтому незамедлительно​ этого выполните следующие​ надвое. Из-за этого​ этом.​.​ с текстом, который​ 2 части.​ вы узнаете очень​http://otvet.mail.ru/question/63239534​

  1. ​Air79vs​ расположенных в таблице​Второй способ.​
  2. ​ работе с табличным​ путем объединения нескольких.​
  3. ​Здесь располагается интерфейс ячейки​ «Копировать»/«Вставить». А лучше​

разделить ячейку на две excel по горизонтали

​ вы можете разделить​ переходим к ним.​ действия:​ можно сделать наоборот:​Грубо говоря, специальных инструментов​Выберите значение в разделе​ вы хотите разделить.​Если речь идет​ много «фольклорных» слов​http://otvet.mail.ru/question/64601616​: Никак, это не​

​ выше и ниже​Вставить в ячейку фигуру​ редактором, тем более​Выделите нужную ячейку.​ с текстом «Надпись».​ сначала построить структуру​ ячейку на две.​А сейчас будет рассказано,​Выделите диапазон ячеек, которые​ объединить ячейки в​ для разделения ячеек​

Способ 2: разделение объединенных ячеек

​Формат данных столбца​На вкладке​ о математическом делении​T-cat​Ampersand​ таблица в Word…​ этой ячейки, и​ Excel, в виде​ если под рукой​На вкладку «Вставка» нажмите​ В нижнем правом​

  1. ​ таблицы и уже​
  2. ​ Чтобы это выполнить,​ как разделить ячейку​ входят в вашу​ таблице таким образом,​ на две в​или используйте то,​
  3. ​Данные​ чисел в экселе,​: Ячейки в Экселе​: РАЗДЕЛИТЬ ЯЧЕЙКУ В​
  4. ​Заранее планируйте сколько​ выровнять шарину.​ линии.​

​ есть пошаговая инструкция,​ по кнопке «Фигуры».​ или левом углу​ потом вписывать в​ вам необходимо:​ в Excel на​ таблицу.​

  1. ​ чтобы визуально нужные​ программе нет, поэтому​ которое Excel выберет​нажмите кнопку​ то нужно написать​ не делятся (если​
  2. ​ EXCEL​
  3. ​ ячеек Вам понадобится.​Как разделить текст в​На закладке «Вставка»​ как это делать.​
  4. ​Из выпадающего списка выберите​ находятся кнопки, после​ нее значения.​

разделить данные ячейки на две excel

​Кликните по той ячейке,​ две по-настоящему. Конечно,​На панели инструментов нажмите​ оказались разделенными.​ придется пользоваться смежными.​ автоматически.​Текст по столбцам​ формулу =А1/2​ мы имеем в​Если в меню​Аноним инкогнито​ ячейке Excel на​ в разделе «Иллюстрации»​Автор: Вадим Матузок​ из категории «Линии»​ нажатия которых ячейка​

Способ 3: разделение по диагонали с помощью форматирования

​Мы уже установили, что​ которую желаете разделить​ для этого необходимо​ по кнопке «Границы».​Четко представьте, как таблица​ Дальше по тексту​В поле​.​Инга​ виду сделать 2​ нет инструмента «Разделить​: Молотком можно разбить​

  1. ​ несколько ячеек, смотрите​ выбираем «Фигуры». Как​Рассмотрим,​ одноименный объект.​
  2. ​ разбивается линией по​
  3. ​ в Excel разделить​ на две. Важно,​
  4. ​ будет изначально прибегнуть​Из выпадающего меню выберите​
  5. ​ должна будет выглядеть​ будет предложено четыре​Поместить в​
  6. ​В​: никак, они не​ квадратика из стандартной​ ячейку — это​ ВСЁ!​ в статье «Разделить​ изменить вид, цвет,​как разделить ячейку в​Зажав левую кнопку мыши,​ диагонали справа налево​
  7. ​ значение ячейки на​ чтобы она находилась​ к некоторым действиям,​ пункт «Все границы».​
  8. ​ в итоге.​ способа, которые можно​

excel разделить значение ячейки на две

​выберите место на​мастере распределения текста по​ делятся. Ты можешь​ экселовской ячейки).​ еще не значит​

Способ 4: разделение по диагонали с помощью вставки фигуры

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

  1. ​Кстати, если вы хотите​
  2. ​Выделите две ячейки над​ разделить на две​
  3. ​ листе, где должны​ столбцам​ наоборот, объединить другие​
  4. ​Лучше сделать наоборот​ что она не​ — бери кувалду.​ несколько ячеек» здесь.​

разделить ячейку на две excel со значениями

​ смотрите в статье​и написать в​ одного угла к​

Вместо заключения

​ соответственно.​ информацию вписывать после,​ получился после объединения.​ точнее, то объединить​ разделить ячейку на​ теми, которые предполагаются​ категории: те, что​ отображаться разделенные данные.​установите переключатель​ ячейки в столбце,​ — объединить 2​ делится.​Ampersand​При обычном копировании​ «Как вставить в​ каждой части ячейки​ другому.​После этого вы можете​ однако если делить​Перейдите на вкладку «Главная».​

​ два смежных столбца.​

fb.ru

Как разделить ячейку в Excel.

​ две в Excel​​ быть раздельными.​ подразумевают разделение ячейки​​Нажмите кнопку​с разделителями​ оставив в нужном​ ячейки. Нужно выделить​Напишите конкретно что​: Разделение Ячейки.​
​ таблицы, бланка, ширина​
​ Excel фото, картинку».​ текст по диагонали.​
​После этого ячейка будет​ также выбрать тип​ ее по диагонали,​В группе инструментов «Выравнивание»​ Для этого:​ по горизонтали, тогда​Перейдите на вкладку «Главная».​ по диагонали, и​Готово​и нажмите кнопку​ месте раздельные. Объединяется​
​ мышью ячейки, например,​
​ именно вам надо​Таблицу, которую вы​ столбцов не сохраняется.​
​Теперь нужно написать​ Провести диагональ в​ разбита на две​ линии и ее​ то никаких предварительных​ нажмите по кнопке​Запустите программу.​ вам всего-навсего объединить​
​На панели инструментов нажмите​ по вертикали или​.​Далее​ с помощью значка​ А1-В1 и, нажав​ и я научу​ представили на рисунке,​ Но есть способ​ текст. Для этого​ ячейке можно двумя​ по диагонали.​
​ цвет.​ДИАГОНАЛЬ В ЯЧЕЙКЕ EXCEL. РАЗДЕЛИТЬ ЯЧЕЙКУ EXCEL ПО ДИАГОНАЛИ. ТЕКСТ ПО ДИАГОНАЛИ В ЯЧЕЙКЕ EXCEL.
​ действий предпринимать не​​ «Объединить и поместить​​Зажав левую кнопку мыши​ две ячейки, находящиеся​ по кнопке «Объединить​ горизонтали. Долго не​При работе в табличном​.​
​ с буквой «а»​ правую кнопку мыши,​ как это сделать.​ надо делать от​ сохранить размеры столбцов.​ делаем две вставки​
​ способами.​Вот мы и разобрались,​Задав все необходимые параметры,​ нужно. А выполняется​ в центр».​ на наименованиях столбцов​ от нее справа​ и поместить в​ задерживаясь на нюансах,​

excel-office.ru

Как в excel разбить ячейку на строки?

​ процессоре Excel у​Выберите​ и стрелочками на​ выбрать «Формат ячеек/Выравнивание/Объединить​

​P.S.​​ обратного.​ смотрите об этом​ «Надпись». Здесь можно​Первый способ.​ что нужно делать​

​ нажмите ОК.​​ все это путем​В появившемся выпадающем меню​
​ (латинские буквы, находящиеся​ или слева. В​

​ центр». Расположена она​​ перейдем непосредственно к​ пользователя возникают различные​
​разделители​ панели форматирования (растягивание​

​ ячейки»​​Кстати, любителям объединять​
​Сначала рисуются самые​ в статье «Копировать​ написать текст любой​Разделить ячейку Excel по​
​ для разделения ячеек​После этого ячейка будет​ форматирования:​
​ выберите опцию «Отменить​ над первой строкой​ этом случае инструкция​ в категории «Выравнивание».​ методам того, как​ задачи, однако даже​для своих данных.​ текста на несколько​Например, в строке​

​ ячейки.​
​ маленькие ячейки, а​
​ таблицу Excel, сохраняя​

Как разделить ячейку на 2. Вообщем воопрос думаю ясен,как на екселе разделить ячейку пополам

​ длины, повернуть надпись,​​ диагонали.​ в Excel. Стоит​
​ разбита на две,​Откройте книгу и перейдите​ объединение ячеек».​ таблицы), выделите два​ по выполнению будет​Сразу после этого вы​
​ разделить ячейку на​ простое на первый​ Например,​ ячеек)​

​ 1 у вас​
​Объединенные ячейки -​ оставшиеся — объединяются.​
​ ширину столбцов».​ др. Как работать​Правой мышкой щелкнуть​
​ заметить, что разделить​ и вы сможете​ на лист, в​Теперь вместо одной ячейки​
​ столбца.​ такой же.​ заметите, что все​ две в Excel.​ взгляд действие в​запятую​

​Денис иванов​​ будет «Сотрудники» в​ это дешевый эффект​Но если не​Допустим мне нужна такая​ с такими надписями,​ по ячейке, выбрать​
​ ячейку со значениями​ ввести в нее​ котором хотите поделить​ у вас две.​Находясь на главной вкладке​Это был первый способ​ два столбца ячеек,​Как говорилось ранее, чтобы​
​ нем выполнить не​и​: Ampersand Мастер, как​ ячейках А1-В1. а​ и большое зло.​ предполагается ввод формул,​ таблица. Как добавить​ смотрите в статье​ в диалоговом окне​ на две в​ свои значения.​ ячейку.​ Кстати, если вы​
​ приложения, нажмите по​ разделения ячейки на​ находящиеся под объединенными,​ разделить ячейку на​ так просто, как​

​пробел​​ сделал? научи​ в строке 2,​А если объединенные​ то визуально разделить​ ячейки только в​ «Как вставить красивый​ функцию «Формат ячеек».​ Excell нельзя с​Разбить ячейку по диагонали​Выделите ее.​ думаете, как разделить​ стрелочке рядом с​

​ две. Если вам​​ будут казаться разделенными,​ две, необходимо прибегнуть​

​ кажется. Так, многие​

Содержание

  • Способ 1: Использование автоматического инструмента
  • Способ 2: Создание формулы разделения текста
    • Шаг 1: Разделение первого слова
    • Шаг 2: Разделение второго слова
    • Шаг 3: Разделение третьего слова
  • Вопросы и ответы

Как расцепить текст в Excel

Способ 1: Использование автоматического инструмента

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

  1. С зажатой левой кнопкой мыши выделите все ячейки, текст которых хотите разделить на столбцы.
  2. Выбор текста для быстрого разделения при помощи встроенного инструмента Excel

  3. После этого перейдите на вкладку «Данные» и нажмите кнопку «Текст по столбцам».
  4. Переход к инструменту быстрого разделения текста в Excel

  5. Появится окно «Мастера разделения текста по столбцам», в котором нужно выбрать формат данных «с разделителями». Разделителем чаще всего выступает пробел, но если это другой знак препинания, понадобится указать его в следующем шаге.
  6. Выбор типа автоматического разделения текста в Excel

  7. Отметьте галочкой символ разделения или вручную впишите его, а затем ознакомьтесь с предварительным результатом разделения в окне ниже.
  8. Выбор типа разделителя при быстром расцеплении текста в Excel

  9. В завершающем шаге можно указать новый формат столбцов и место, куда их необходимо поместить. Как только настройка будет завершена, нажмите «Готово» для применения всех изменения.
  10. Просмотр предварительного результата автоматического расцепления текста в Excel

  11. Вернитесь к таблице и убедитесь в том, что разделение прошло успешно.
  12. Результат автоматического расцепления текста в Excel

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

Способ 2: Создание формулы разделения текста

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

Шаг 1: Разделение первого слова

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

  1. Для удобства создадим три новые столбца с подписями, куда будем добавлять разделенный текст. Вы можете сделать так же или пропустить этот момент.
  2. Создание вспомогательных столбцов для ручного разделения текста в Excel

  3. Выберите ячейку, где хотите расположить первое слово, и запишите формулу =ЛЕВСИМВ(.
  4. Создание первой формулы для разделения первого слова из текста в Excel

  5. После этого нажмите кнопку «Аргументы функции», перейдя тем самым в графическое окно редактирования формулы.
  6. Переход к редактированию аргументов функции разделения первого слова текста в Excel

  7. В качестве текста аргумента указывайте ячейку с надписью, кликнув по ней левой кнопкой мыши на таблице.
  8. Выбор ячейки с текстом для разделения первого слова в Excel

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

    Lumpics.ru

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

  13. В поле «Искомый_текст» просто поставьте пробел или используемый разделитель, поскольку он поможет понять, где заканчивается слово. В «Текст_для_поиска» укажите ту же обрабатываемую ячейку.
  14. Выбор текста для поиска первого пробела при разделении слова в Excel

  15. Нажмите по первой функции, чтобы вернуться к ней, и добавьте в конце второго аргумента -1. Это необходимо для того, чтобы формуле «ПОИСК» учитывать не искомый пробел, а символ до него. Как видно на следующем скриншоте, в результате выводится фамилия без каких-либо пробелов, а это значит, что составление формул выполнено правильно.
  16. Редактирование формулы ЛЕВСИМВ для отображения первого слова при разделении текста в Excel

  17. Закройте редактор функции и убедитесь в том, что слово корректно отображается в новой ячейке.
  18. Возвращение к таблице для проверки отображения первого слова при разделении в Excel

  19. Зажмите ячейку в правом нижнем углу и перетащите вниз на необходимое количество рядов, чтобы растянуть ее. Так подставляются значения других выражений, которые необходимо разделить, а выполнение формулы происходит автоматически.
  20. Растягивание формулы после разделения первого слова в Excel

Полностью созданная формула имеет вид =ЛЕВСИМВ(A1;ПОИСК(" ";A1)-1), вы же можете создать ее по приведенной выше инструкции или вставить эту, если условия и разделитель подходят. Не забывайте заменить обрабатываемую ячейку.

Шаг 2: Разделение второго слова

Самое трудное — разделить второе слово, которым в нашем случае является имя. Связано это с тем, что оно с двух сторон окружено пробелами, поэтому придется учитывать их оба, создавая массивную формулу для правильного расчета позиции.

  1. В этом случае основной формулой станет =ПСТР( — запишите ее в таком виде, а затем переходите к окну настройки аргументов.
  2. Создание формулы для разделения второго слова в Excel

  3. Данная формула будет искать нужную строку в тексте, в качестве которого и выбираем ячейку с надписью для разделения.
  4. Выбор ячейки при поиске строки для разделения второго слова в Excel

  5. Начальную позицию строки придется определять при помощи уже знакомой вспомогательной формулы ПОИСК().
  6. Создание функции ПОИСК для поиска начальной позиции при разделении второго слова в Excel

  7. Создав и перейдя к ней, заполните точно так же, как это было показано в предыдущем шаге. В качестве искомого текста используйте разделитель, а ячейку указывайте как текст для поиска.
  8. Настройка функции ПОИСК для поиска начальной позиции при разделении второго слова в Excel

  9. Вернитесь к предыдущей формуле, где добавьте к функции «ПОИСК» +1 в конце, чтобы начинать счет со следующего символа после найденного пробела.
  10. Редактирование функции для учета пробела при настройке формулы разделения второго слова в Excel

  11. Сейчас формула уже может начать поиск строки с первого символа имени, но она пока еще не знает, где его закончить, поэтому в поле «Количество_знаков» снова впишите формулу ПОИСК().
  12. Переход к настройке функции поиска второго пробела при разделении слова в Excel

  13. Перейдите к ее аргументам и заполните их в уже привычном виде.
  14. Настройка функции поиска второго пробела при разделении слова в Excel

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

  17. Перейдите к созданной функции и заполните ее таким же образом.
  18. Настройка вспомогательной функции для поиска второго пробела в Excel

  19. Возвращайтесь к первому "ПОИСКУ" и допишите в «Нач_позиция» +1 в конце, ведь для поиска строки нужен не пробел, а следующий символ.
  20. Редактирование первой функции ПОИСК для второго слова при разделении в Excel

  21. Кликните по корню =ПСТР и поставьте курсор в конце строки «Количество_знаков».
  22. Завершающий этап настройки формулы для разделения второго слова в Excel

  23. Допишите там выражение -ПОИСК(" ";A1)-1) для завершения расчетов пробелов.
  24. Добавление последнего выражения для формулы разделения второго слова Excel

  25. Вернитесь к таблице, растяните формулу и удостоверьтесь в том, что слова отображаются правильно.
  26. Результат работы формулы для разделения второго слова в Excel

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

Шаг 3: Разделение третьего слова

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

  1. В пустой ячейке для расположения будущего текста напишите =ПРАВСИМВ( и перейдите к аргументам этой функции.
  2. Переход к настройке формулы для разделения третьего слова в Excel

  3. В качестве текста указывайте ячейку с надписью для разделения.
  4. Выбор ячейки для разделения третьего слова в Excel

  5. В этот раз вспомогательная функция для поиска слова называется ДЛСТР(A1), где A1 — та же самая ячейка с текстом. Эта функция определяет количество знаков в тексте, а нам останется выделить только подходящие.
  6. Создание функции ДЛСТР для поиска количества символов в строке при разделении слова в Excel

  7. Для этого добавьте -ПОИСК() и перейдите к редактированию этой формулы.
  8. Добавление функции ПОИСК для разделения третьего слова в Excel

  9. Введите уже привычную структуру для поиска первого разделителя в строке.
  10. Стандартная настройка функции ПОИСК для разделения третьего слова

  11. Добавьте для начальной позиции еще один ПОИСК().
  12. Добавление начальной позиции для функции ПОИСК при разделении третьего слова в Excel

  13. Ему укажите ту же самую структуру.
  14. Настройка начальной позиции для функции ПОИСК при разделении третьего слова в Excel

  15. Вернитесь к предыдущей формуле «ПОИСК».
  16. Переход к предыдущей функции ПОИСК для завершения настройки разделения третьего слова в Excel

  17. Прибавьте для его начальной позиции +1.
  18. Настройка начальной позиции для завершения разделения третьего слова в Excel

  19. Перейдите к корню формулы ПРАВСИМВ и убедитесь в том, что результат отображается правильно, а уже потом подтверждайте внесение изменений. Полная формула в этом случае выглядит как =ПРАВСИМВ(A1;ДЛСТР(A1)-ПОИСК(" ";A1;ПОИСК(" ";A1)+1)).
  20. Проверка разделения третьего слова при работе формулы в Excel

  21. В итоге на следующем скриншоте вы видите, что все три слова разделены правильно и находятся в своих столбцах. Для этого пришлось использовать самые разные формулы и вспомогательные функции, но это позволяет динамически расширять таблицу и не беспокоиться о том, что каждый раз придется разделять текст заново. По необходимости просто расширяйте формулу путем ее перемещения вниз, чтобы следующие ячейки затрагивались автоматически.
  22. Результат разделения всех трех слов в Excel

Еще статьи по данной теме:

Помогла ли Вам статья?

 

Raileg

Пользователь

Сообщений: 11
Регистрация: 23.07.2013

Добрый день!
Извиняюсь, если тема уже где-то была, пролистал пару-тройку страниц и не нашел похожего.
Нужно разделить ячейку в которой есть несколько строк текста, на несколько ячеек.
Например, в одной ячейке текст:
1
2
3
4
5
Нужно сделать из одной ячейки пять ячеек-строк, в каждой по одной цифре.

 

Bema

Пользователь

Сообщений: 6750
Регистрация: 15.02.2016

Скопировал Ваш пример в ячейку А1. В А2 написал формулу:
=ПСТР($A$1;(СТРОКА()-2)*3+1;1)
и протянул вниз. Сработало.

Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл

 

Raileg

Пользователь

Сообщений: 11
Регистрация: 23.07.2013

А у меня что-то никак… Что я делаю не так?

Прикрепленные файлы

  • Книга1.xlsx (11.43 КБ)

 

Сергей

Пользователь

Сообщений: 11251
Регистрация: 01.01.1970

пример полная фигня у вас же на самом деле не по 1 цифре в строке

Лень двигатель прогресса, доказано!!!

 

Raileg

Пользователь

Сообщений: 11
Регистрация: 23.07.2013

У меня в одной ячейке 5 строк, разделенных символами переноса на следующую строку, из этого мне надо сделать 5 ячеек построчно… плохо объяснил в первый раз? Или есть какой-то другой способ сделать 5 строк в одной ячейке? для меня это именно 5 строк в одной ячейке…

Изменено: Raileg29.09.2017 12:04:34

 

Сергей

Пользователь

Сообщений: 11251
Регистрация: 01.01.1970

#6

29.09.2017 12:06:06

Цитата
Raileg написал:
плохо объяснил в первый раз

поясняю второй раз пример нужен с приближенными к реальности данными, а не 1 2 3 4 5

Лень двигатель прогресса, доказано!!!

 

Bema

Пользователь

Сообщений: 6750
Регистрация: 15.02.2016

#7

29.09.2017 12:07:06

Код
=ПСТР(ПОДСТАВИТЬ($A$1;СИМВОЛ(10);"");СТОЛБЕЦ()-1;1)

Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл

 

Raileg

Пользователь

Сообщений: 11
Регистрация: 23.07.2013

Ну с реальными, так с реальными :) Вот нужно здесь из одной строки сделать 13, чтобы каждое значение из столбца В стало отдельной ячейкой, столбец А просто копируется для каждой строки.

Прикрепленные файлы

  • Книга1.xlsx (11.35 КБ)

 

Bema

Пользователь

Сообщений: 6750
Регистрация: 15.02.2016

#9

29.09.2017 12:13:23

Цитата
Raileg написал:
Ну с реальными, так с реальными

Уговорили наконец-то.

Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл

 

Сергей

Пользователь

Сообщений: 11251
Регистрация: 01.01.1970

#10

29.09.2017 12:36:41

в С1 и растягиваем вправо

Код
=ЕСЛИ(ЕОШИБКА(ПСТР($B1;ПОИСК("///";ПОДСТАВИТЬ($B1;"FCA";"///";СТОЛБЕЦ(A1)));ПОИСК("\";ПОДСТАВИТЬ($B1;"FCA";"\";СТОЛБЕЦ(A1)+1))-ПОИСК("///";ПОДСТАВИТЬ($B1;"FCA";"///";СТОЛБЕЦ(A1)))));СЖПРОБЕЛЫ(ПРАВСИМВ(ПОДСТАВИТЬ($B1;СИМВОЛ(10);ПОВТОР(" ";50));50));ПСТР($B1;ПОИСК("///";ПОДСТАВИТЬ($B1;"FCA";"///";СТОЛБЕЦ(A1)));ПОИСК("\";ПОДСТАВИТЬ($B1;"FCA";"\";СТОЛБЕЦ(A1)+1))-ПОИСК("///";ПОДСТАВИТЬ($B1;"FCA";"///";СТОЛБЕЦ(A1)))))

Лень двигатель прогресса, доказано!!!

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(СИМВОЛ(10)&$B$1;СИМВОЛ(10);ПОВТОР(» «;999));СТРОКА(A1)*999;999))

 

Сергей

Пользователь

Сообщений: 11251
Регистрация: 01.01.1970

оптимизация однако vikttur, 8)  

Лень двигатель прогресса, доказано!!!

 

Raileg

Пользователь

Сообщений: 11
Регистрация: 23.07.2013

Большое всем спасибо! :)

 

Владимир

Пользователь

Сообщений: 8196
Регистрация: 21.12.2012

#14

29.09.2017 13:22:45

Код
Sub SplitChr()
Dim a&, i&, y&, lstr&, lstr2&
lstr = Cells(Rows.Count, 2).End(xlUp).Row
For y = 1 To lstr
    a = UBound(Split(Cells(y, 2), Chr(10)))
    For i = 0 To a
        lstr2 = Cells(Rows.Count, 1).End(xlUp).Row + 1
        Cells(lstr2, 1) = Split(Cells(y, 2), Chr(10))(i)
    Next
Next y
End Sub

«..Сладку ягоду рвали вместе, горьку ягоду я одна.»

 

DJMC

Пользователь

Сообщений: 421
Регистрация: 06.05.2020

Добрый день, а если в ячейке А1 стоит значение 11112 как то можно каждую цифру отдельно вынести на пять строк ниже?

 

Тимофеев

Пользователь

Сообщений: 1495
Регистрация: 01.09.2020

#16

06.08.2021 11:23:00

Код
=ПСТР(A1;ПОСЛЕД(ДЛСТР(A1));1)
 

Kuzmich

Пользователь

Сообщений: 7998
Регистрация: 21.12.2012

#17

06.08.2021 11:34:24

Цитата
как то можно каждую цифру отдельно вынести на пять строк ниже
Код
Sub test()
Dim n As Integer
   For n = Len(Range("A1")) To 1 Step -1
     Rows(2).Insert
     Range("A2") = Mid(Range("A1"), n, 1)
   Next
End Sub
 

DJMC

Пользователь

Сообщений: 421
Регистрация: 06.05.2020

Спасибо Тимофеев и Kuzmich помогло.

 

Ребята. не смог найти решение схожей но более сложной задачки :(

помогите, пожалуйста.

нужно разбить построчно много ячеек из исходной строки.

пример с данными лежит в двух листах, на одном из листов данные перемежаются со строками, которые не нужно изменять

 

Msi2102

Пользователь

Сообщений: 3134
Регистрация: 31.03.2014

#20

03.03.2022 12:16:14

Andrew Kazekin, попробуйте Power Query

Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Таблица2"]}[Content],
    Строки = Table.Skip(Источник,1),
    Повыш = Table.PromoteHeaders(Строки, [PromoteAllScalars=true]),
    Заголовки = List.Skip(Table.ColumnNames(Повыш), 8),
    Результат = List.Accumulate(Заголовки,Повыш,(z,z2) => Table.SplitColumn(z, z2, Splitter.SplitTextByDelimiter("#(lf)", QuoteStyle.Csv),3)),
    Заголовки2 = List.ReplaceValue(List.ReplaceValue(List.ReplaceValue(
        List.ReplaceRange(Table.ColumnNames(Результат), 0, 4, {"Локализация, нозологическая форма", "Код МКБ10", "Станд. показатель", "Ошибка станб. показателя"}),
            ".1", " Абс. число", Replacer.ReplaceText), 
            ".2", " Грубый", Replacer.ReplaceText), 
            ".3", " Уд вес", Replacer.ReplaceText),
    Переименование = Table.RenameColumns(Результат,List.Zip({Table.ColumnNames(Результат),Заголовки2})),
    Удаленные_столбцы = Table.RemoveColumns(Переименование,{"Column8"})
in
    Удаленные_столбцы

Прикрепленные файлы

  • Разбить ячейки на строки_пример_2.xlsx (30.3 КБ)

 

TrailRyder

Пользователь

Сообщений: 5
Регистрация: 08.06.2016

#21

15.08.2022 14:36:19

Цитата
написал:
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(СИМВОЛ(10)&$B$1;СИМВОЛ(10);ПОВТОР(» «;999));СТРОКА(A1)*999;999))

Приветсвую, камрады!
Помогите, пожалуйста, разобраться с этой формулой.
В моём файле она работает корректно только отчасти, так как в ячейке около 3000 символов.
Данная формула, при достижении 998-го, просто обрывает текст и переносит его в следующую ячейку.
Простое увеличение количества символов приводит к тому, что строки переносятся некоректно, а именно просто продолжаются после знака переноса (символ(10)).

 

_Boroda_

Пользователь

Сообщений: 1496
Регистрация: 27.07.2013

Контакты см. в профиле

Тема старая, разбираться в ней не очень уже.
Приложите свой пример (так есть — так нужно)
И да, просто замена 999 на 9999 не помогает?

Скажи мне, кудесник, любимец ба’гов…

 

TrailRyder

Пользователь

Сообщений: 5
Регистрация: 08.06.2016

#23

15.08.2022 17:09:03

Просто замена 999 на 9999 — даёт то, что из ячейки убираются все переносы строк и заменяются на пробелы. То есть просто весь текст записывается в строку, без переносов.

In this guide, we’re going to show you how to split text in Excel by a delimiter.

Download Workbook

We have a sample data which contains concatenated values separated by “|” characters. It is important that the data includes a specific delimiter character between each chunk of data to make splitting text easier.

Text to Columns feature for splitting text

When splitting text in Excel, the Text to Columns is one of the most common methods. You can use the Text to Columns feature with all versions of Excel. This feature can split text by a specific character count or delimiter.

  1. Start with selecting your data. You can use more than one cell in a column.
  2. Click Data > Text to Columns in the Ribbon.
  3. On the first step of the wizard, you have 2 options to choose from — these are slicing methods. Since our data in this example is split by delimiters, our choice is going to be Delimited.
  4. Click Next to continue
  5. Select the delimiters suitable to your data or choose a character length and click Next.
  6. Choose corresponding data types for the columns and the destination cell. Please note that if the destination cell is the same cell as where your data is, the original data will be overwritten.
  7. Click Finish to see the outcome.

How to split text by delimiter in Excel 02

Using formulas to split text

Excel has a variety of text formulas that you can use to locate delimiters and parse data. When using formulas to do so, Excel automatically updates the parsed values when the source is updated.

The formula used in this example uses Microsoft 365’s dynamic array feature, which allows you to populate multiple cells without using array formulas. If you can see the SEQUENCE formula, you can use this method.

Syntax

=TRIM(MID(SUBSTITUTE( text, separator, REPT( “ “, LEN( text ))),(SEQUENCE( 1, column count ) — 1 ) * LEN( text ) + 1,LEN( text )))

How it works

The formula replaces each separator character with space characters first. (see SUBSTITUTE) The number of space characters will be equal to the original string’s character count, which is enough number of spaces to separate each string block (see REPT and LEN).

The SEQUENCE function generates an array of numbers starting with 1, up to the number of maximum columns. Multiplying these sequential numbers with the length of the original string returns character numbers indicating the start of each block.

This approach uses the MID function to parse each string block with given start character number and the number of characters to return. Since the separators are replaced with space characters, each parsed block includes these spaces around the actual string. The TRIM function then removes these spaces.

How to split text by delimiter in Excel 03

Flash Fill

The Flash Fill is an Excel tool which can detect the pattern when entering data. A common example is to separate or merge first name and last names. Let’s say column A contains the first name — last name combinations. If you type in the corresponding first name in the same row for column B, Excel shows you a preview for the rest of the column.

Please note that the Flash Fill is available for Excel 2013 and newer versions only.

You can see the same behavior with strings using delimiters to separate data. Just select a cell in the adjacent column and start typing. Occasionally Excel will display a preview. If not, press Ctrl + E like below to split your text.

Power Query

Power Query is a powerful feature, not only for splitting text, but for data management in general. Power Query comes with its own text splitting tool which allows you to split text in multiple ways, like by delimiters, number of characters, or case of letters.

If you are using Excel 2016 or newer — including Microsoft 365 — you can find Power Query options under the Data tab’s Get & Transform section. Excel 2010 and 2013 users should download and install the Power Query as an add-in.

  1. Select the cells containing the text.
  2. Click Data > From Sheet. If the data is not in an Excel Table, Excel converts it into an Excel Table first.
  3. Once the Power Query window is open, find the Split Column under the Transform tab and click to see the options.
  4. Select the approach that fits your data layout. The data in our example is using By Delimiter since the data is separated by “|”.
  5. Power Query will show the delimiter character. If you are not seeing the expected delimiter, choose from the list or enter it yourself.
  6. Click OK to split text.
  7. If your data includes headers in its first row, like our example does, click Transform > Use First Row as Headers to keep them as headers.
  8. One you satisfied with the result, click the Home > Close & Load button to move the split data into your workbook.

VBA

VBA is the last text splitting option we want to show in this article. You can use VBA in two ways to split text:

  1. By calling the Text to Columns feature using VBA,
  2. Using VBA’s Split function to create array of sub-strings and using a loop to distribute the sub-strings into adjacent cells in the same row.

Text to Columns by VBA

The following code can split data from selected cells into the adjacent columns. Note that each supported delimiter is listed as an argument which you can enable or disable by giving them either True or False. Briefly, True means that you want to set that argument as a delimiter and False means ignore that character.

An easy way to generate a VBA code to split text is to record a macro. Start a recording section using the Record Macro button in the Developer tab, and use the Text to Columns feature. Once the recording is stopped, Excel will save the code for what you did during recording.

The code:

Sub VBATextToColumns_Multiple()
Dim MyRange As Range
Set MyRange = Selection ‘To work on a static range replace Selection via Range object, e.g., Range(“B6:B12”)

MyRange.TextToColumns _
Destination:=MyRange(1, 1).Offset(, 1), _
DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, _
ConsecutiveDelimiter:=False, _
Tab:=True, _
SemiColon:=False, _
Comma:=False, _
Space:=False, _
Other:=True, _
OtherChar:=»|»
End Sub

Split Function

Split function can be useful if you want to keep the split blocks in an array. You can only use this method for splitting because of the single delimiter constraint. The following code loops through each cell in a selected column, splits and stores text by the delimiter “|”, and uses another loop to populate the values in the array on cells. The final EntireColumn.AutoFit command adjusts the column widths.

The code:

Sub SplitText()
Dim StringArray() As String, Cell As Range, i As Integer
For Each Cell In Selection ‘To work on a static range replace Selection via Range object, e.g., Range(“B6:B12”)
StringArray = Split(Cell, «|») ‘Change the delimiter with a character suits your data
For i = 0 To UBound(StringArray)
Cell.Offset(, i + 1) = StringArray(i)
Cell.Offset(, i + 1).EntireColumn.AutoFit ‘This is for column width and optional.
Next i
Next
End Sub

Понравилась статья? Поделить с друзьями:
  • Excel разделение текста ячейки на несколько столбцов
  • Excel размер ячейки под текст как подогнать
  • Excel разделение строки по символу
  • Excel размер ячейки по размеру содержимого
  • Excel разделение на периоды