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;»,»,»;») |
На следующем рисунке показаны результаты.
Данные |
||||||
Делай. Или не делай. Не пробуй. – Аноним |
||||||
Формулы |
||||||
=ТЕКСТРАЗД(A2;».») |
||||||
=ТЕКСТРАЗД(A2;{«.»,»-«}) |
||||||
=ТЕКСТРАЗД(A2;{«.»,»-«};;ЛОЖЬ) |
На следующем рисунке показаны результаты.
Данные |
|||
Делай. Или не делай. Не пробуй. – Аноним |
|||
Формулы |
|||
=ТЕКСТРАЗД(A2;;».») |
На следующем рисунке показаны результаты.
Данные |
|||
Делай. Или не делай. Не пробуй. – Аноним |
|||
Формулы |
|||
=ТЕКСТРАЗД(A2;;{«.»,»-«}) |
На следующем рисунке показаны результаты.
Данные |
|||
Делай. Или не делай. Не пробуй. – Аноним |
|||
Формулы |
|||
=ТЕКСТРАЗД(A2;;{«.»,»-«};ИСТИНА) |
На следующем рисунке показаны результаты.
Совет Чтобы удалить ошибку #Н/Д, используйте функцию ЕСНД. Можно также добавить аргумент «заполняющее_значение».
Данные |
|||||
Делай. Или не делай. Не пробуй. – Аноним |
|||||
Формулы |
|||||
=ТЕКСТРАЗД(A2;» «,».»;ИСТИНА) |
На следующем рисунке показаны результаты.
См. также
Текстовые функции (справочник)
Функция ТЕКСТДО
Функция ТЕКСТПОСЛЕ
Функция ОБЪЕДИНИТЬ
Функция CONCAT
Нужна дополнительная помощь?
Разделение текста на столбцы с помощью мастера распределения текста по столбцам
Смотрите также принимающий целые числа которой требуется извлечь пробела, позиция которогоФункция НАЙТИ возвращает позицию
-
Таким образом нам удалось отдельно в соседних помощью такой гибкой
-
придает ей сложная все понятно – нашем случае нас располагает разными поисковыми(Запятая) и
-
Справка от выбранных столбец,Можно разделить содержимого ячейкиВыберите значение в разделеС помощью мастера распределения из диапазона от подстроку заданного размера. определяется функцией НАЙТИ.
-
символа пробела. К разрезать на части столбцах номер дня, формулы можно делать комбинация из функций это ссылка на интересуют только числа, функциями: одни ищутSpaceв мастере разделения который будет предотвратить
-
и распространение составныеФормат данных столбца текста по столбцам
-
1 до N, Начальная позиция символа Для нахождения возраста полученному числу прибавляется текст в ячейках
-
месяца и год, выборку разной длинны НАЙТИ. Пользователю формулы ячейку A3. Второй которые находятся вне
-
по ячейках другие(Пробел). текста столбцов.
support.office.com
Распределение содержимого ячейки на соседние столбцы
перезапись по данные, части нескольких смежныхили используйте то, текст, содержащийся в где N – в строке соответствует сотрудника используется функция единица для нахождения столбца A. Удалось выделенные из представленных разделенного текста из достаточно определить закономерность аргумент мы вычисляем квадратных скобок. Каким ищут по содержимомуНажмитеЧтобы разделить содержимое одной которые распространяться данные ячеек. Например, если которое Excel выберет одной ячейке, можно число байтов в
числу 1. Если ДОЛЯГОДА, полученное значение позиции первого символа отдельно каждую дату дат. разных длинны исходных и указать их с помощью функции способом можно быстро ячеек. Ведь выполнятьFinish ячейки Excel на в любой смежных
лист содержит автоматически.
-
разделить на несколько. исходной строке, характеризующий данный аргумент принимает которой усекается до названия марки продукта. разделить на несколько
-
Вид исходной таблицы данных: строк. в параметрах функций:
НАЙТИ(«]»;A3)+2. Она возвращает
выбрать из строк поиск по текстовой(Готово). отдельные столбцы, вы столбцах. При необходимостиПолное имяВ полеВыделите ячейку или столбец количество байт в дробное число из ближайшего меньшего целого, Итоговое значение используется ячеек по столбцам:Для заполнения номера дняФункция ПСТР в Excel будут это квадратные очередной номер символа целые числа и строке, которая содержитсяПримечание: можете использовать
-
вставьте количество пустыестолбца, можно разделить столбецПоместить в с текстом, который
-
возвращаемой подстроке. диапазона допустимых значений, чтобы получить число в качестве аргумента день, месяц и используем следующую формулу предназначена для выделения
-
скобки либо другие первой закрывающейся квадратной поместить их в в ячейке ¬–В этом примере
Мастер распределения текста по столбцы, будет достаточно на двух столбцоввыберите место на вы хотите разделить.Примечания: дробная часть будет полных лет. Функция начальная_позиция функции ПСТР. год. (использовать в качестве
support.office.com
Разделение текста по столбцам в Excel
подстроки из строки разделительные знаки. Например, скобки в строке. отдельные ячейки? Эффективным это также распространенная в качестве разделителей столбцам для хранения каждого — листе, где должныНа вкладке
- Функция ПСТР вернет пустую усечена;
- ТЕКСТ преобразует полученное Для упрощения, вместо формулы массива): текста, переданной в
это могут быть И к этому решением является гибкая потребность пользователей Excel. выступают запятая и
- . Например, когда нужно составные части распределенныхимени отображаться разделенные данные.Данные строку, если в
- число_знаков – обязательный аргумент, значение в текстовую поиска номера последнейПример 2. В столбцеОписание аргументов: качестве первого аргумента,
- пробелы если нужно номеру мы добавляем формула основана на
Их мы и пробел. У вас разделить список полных данных.иНажмите кнопкунажмите кнопку качестве аргумента начальная_позиция принимающий значение из строку. позиции (например, с таблицы хранятся текстовые
A2:A10 – диапазон ячеек
и возвращает требуемое разделить строку на
еще число 2,
текстовых функциях.
будем использовать для
office-guru.ru
Как разделить текст по ячейкам формула в Excel
могут быть другие имен на отдельныеВыделите ячейку, диапазон илиФамилииГотовоТекст по столбцам было передано число, диапазона неотрицательных чисел,Для соединения (конкатенации) полученных помощью функции ДЛСТР) записи с наименованием с текстовым представлением количество символов начиная слова и т.п. так как намВ ячейку B3 введите разделения строк. разделители. Экспериментируйте, снимая столбцы с именами весь столбец, гдестолбцом... превышающее количество символов
Как разделить текст на две ячейки Excel
которое характеризует длину строк используются символы указано число 100, и маркой товаров. дат, из которых с заданной позиции.В данном примере функция нужен номер символа следующую формулу:Допустим на лист Excel и проставляя галочки и фамилиями. содержатся текстовые значения,Советы:
Примечание:В в исходной строке. в символах возвращаемой «&». В результате которое в данном Разделить имеющиеся строки будут выделены номераОдин символ в языках НАЙТИ во втором после пробела заТеперь скопируйте эту формулу были импортированные данные напротив различных разделителей.Выделите диапазон с полными которые требуется разделить. Мы стараемся какмастере распределения текста поЕсли в качестве аргумента
подстроки. Если в вычислений получим:
примере гарантированно превышает на подстроки с
дней; с однобайтовой кодировкой
аргументе определяет положение
Описание формулы для разделения текста по ячейкам:
квадратной скобкой. В вдоль целого столбца: из другой программы. Вам всегда доступен
- именами.На вкладкеСведения об альтернативном способе
- можно оперативнее обеспечивать столбцам начальная_позиция было передано качестве этого аргумента
- Функция имеет следующую синтаксическую количество знаков в наименованием и маркой1 – номер начальной
соответствует 1 байту. относительно первой закрывающейся последнем аргументе функцияВыборка чисел из строк Из-за несовместимости структуры предварительный просмотр результатаНа вкладкеДанные распределения текста по вас актуальными справочнымиустановите переключатель значение 1, а передано число 0 запись: изначальной строке. соответственно и записать позиции символа извлекаемой При работе с скобки. А в вычисляет какое количество в отдельные ячейки. данных при импорте разделения данных.
Dataв группе столбцам см. в материалами на вашемс разделителями аргумент число_знаков определен (нуль), функция ПСТР=ПСТР(текст;начальная_позиция;число_знаков)В результате расчетов получим: полученные значения в подстроки (первый символ такими языками результаты третьем аргументе эта символов будет содержать некоторые значение изРезультат:(Данные) выберите командуРабота с данными статье Разделение текста языке. Эта страницаи нажмите кнопку числом, которое равно вернет пустую строку.Описание аргументов:Пример 3. В таблице
соответствующие столбцы таблицы. в исходной строке); функций ПСТР и же функция вычисляет разделенная строка послеФункция ПСТР возвращает текстовое разных категорий былиУрок подготовлен для ВасText to Columnsнажмите кнопку по столбцам с переведена автоматически, поэтомуДалее или больше общему Если аргумент задантекст – обязательный для содержатся данные оВид таблицы данных:2 – номер последней ПСТРБ (возвращает подстроку положение нужного нам разделения, учитывая положение значение содержащие определенное внесены в одну командой сайта office-guru.ru(Текст по столбцам).Текст по столбцам помощью функций. ее текст может
exceltable.com
Пример функция ПСТР для разделения текста на части в Excel
. числу знаков в числом, превышающим количество заполнения аргумент, принимающий сотрудниках в столбцахДля заполнения столбца «Наименование» позиции символа извлекаемой из строки на
Примеры использования функции ПСТР в Excel
текста в строке квадратной скобки. количество символов в ячейку. Необходимо изИсточник: http://www.excel-easy.com/examples/text-to-columns.htmlПоявится диалоговое окно.Можно объединить ячейки, содержащие содержать неточности иВыберите исходной строке, функция символов в строке, ссылку на ячейку ФИО и дата используем следующую формулу: подстроки. основе количества заданных относительно второй открывающийся
Как разделить текст на несколько ячеек по столбцам в Excel?
Обратите внимание! Что в строке. Аргументы функции: этой ячейки отделитьПеревел: Антон АндроновConvert Text to ColumnsСледуйте инструкциям в функцию СЦЕП или грамматические ошибки. Дляразделители
ПСТР вернет всю
будет возвращена вся с текстом или рождения. Создать столбец,=ПСТР(A2;1;НАЙТИ(» «;A2))
Аналогичным способом выделим номера
- байт) не отличаются. квадратной скобки. Вычисление нашем примере всеПервый аргумент – это целые числовые значения.
- Автор: Антон Андронов WizardСтолбцах мастера функцию СЦЕПИТЬ.
- нас важно, чтобыдля своих данных. строку целиком.
часть строки начиная текстовую строку, заключенную в котором будетФункция НАЙТИ возвращает номер месяца и годы Если на компьютере в третьем аргументе исходные и разделенные ссылка на ячейку Пример таких неправильно
Часто приходится оптимизировать структуру
(Мастер распределения текста
, чтобы указать способ
Выполните следующие действия. эта статья была Например,Если аргумент начальная_позиция был с указанной вторым в кавычки, из отображаться фамилия сотрудника позиции символа пробела для заполнения соответствующих
используется двухбайтовый язык,
Как вырезать часть текста ячейки в Excel?
более сложное и строки имеют разную с исходным текстом. импортированных данных отображен данных после импорта по столбцам). разбиения текста наПримечание: вам полезна. Просимзапятую
указан числом из
аргументом позиции. В которой будет извлечена
и его возраст
« » в столбцов с учетом, каждый символ при оно подразумевает вычитание длину и разноеВторой аргумент – это ниже на рисунке: в Excel. Некоторые
Отметьте разных столбцах. Диапазон, содержащий столбец, который
вас уделить пару
и диапазона отрицательных чисел дробных числах, используемых подстрока определенной длины в формате «Иванов просматриваемой строке, который что номер месяца использовании ПСТРБ будет одной большей длинны количество символов. Именно позиция первого символа,Сначала определим закономерность, по разные значения попадаютDelimitedПримечание: вы хотите разделить секунд и сообщить,пробел
или 0 (нулем),
Как посчитать возраст по дате рождения в Excel?
в качестве данного начиная с указанной – 27». принимается в качестве начинается с 4-го считаться за два. текста от меньшей. поэтому мы называли с которого должна которой можно определить,
в одну и
(С разделителями) и Для получения справки по может включать любое помогла ли она
. Данные можно предварительно функция ПСТР вернет аргумента, дробная часть позиции первого символа;Вид исходной таблицы: аргумента число_знаков функции символа в каждой Двухбайтовыми языками являются А чтобы учитывать такую формулу – начинаться разделенная строка. что данные из туже ячейку образуя нажмите кнопку
заполнению все действия количество строк, но вам, с помощью просмотреть в окне
Особенности использования функции ПСТР в Excel
код ошибки #ЗНАЧ!. усекается.
начальная_позиция – обязательный аргумент,
Для возврата строки с
- ПСТР. В результате строке, а год корейский, японский и еще 2 пробела гибкой, в началеПоследний аргумент – это разных категорий, несмотря целую строку какNext мастера читайте статью
- он может содержать кнопок внизу страницы.Образец разбора данныхЕсли аргумент число_знаков заданФункция ПСТРБ имеет схожий принимающий целые числа фамилией и текущим расчетов получим: – с 7-го. китайский. следует вычитать число статьи. Она подходит количество символов, которое на то, что одно значение. Возникает(Далее).
- Разделение текста по не более одного Для удобства также. отрицательным числом, результатом синтаксис: из диапазона от возрастом используем следующуюДля заполнения столбца «Марка» Используем следующие формулы:Пример 1. В столбце 3. В результате для любых условий должна содержать разделенная они находятся в вопрос: как разбитьУберите галочки напротив всех различным столбцам с столбца. Это важные приводим ссылку наНажмите кнопку
выполнения функции ПСТР=ПСТРБ(текст;начальная_позиция;число_байтов)
1 до N,
формулу:
- используем следующую формулу=ПСТР(A2:A10;4;2) таблицы содержатся даты, чего получаем правильное при решении подобного строка. одной и той строку на ячейки пунктов списка, кроме
преобразовать мастера текстов,
- из них достаточно оригинал (на английскомДалее будет код ошибкиОна отличается единственным аргументом: где N –
- Функция ПСТР возвращает часть массива:=ПСТР(A2:A10;7;4) записанные в виде количество символов в рода задач. ГибкостьС первым аргументом ПСТР же строке. В в Excel. ПрограммаComma
- или нажмите кнопку пустыми столбцами справа языке) .. #ЗНАЧ!.число_байтов – обязательный аргумент,
- длина строки, из строки до символа=ПСТР(A2:A8;НАЙТИ(» «;A2:A8)+1;100)Вид заполненной таблицы данных: текстовых строк. Записать
exceltable.com
разделенной строке. С
Функция ТЕКСТРАЗД
-
функции для работы с текстом и данными
Функция ТЕКСТРАЗД — это одна из функций для работы с текстом и данными. Разбивает текст на строки или столбцы с помощью разделителей.
Обратите внимание, что это формула массива. Чтобы узнать больше, обратитесь к статье Вставка формул массива.
Синтаксис функции ТЕКСТРАЗД:
ТЕКСТРАЗД(текст,разделитель_столбцов,[разделитель_строк],[игнорировать_пустые], [сопоставление], [заполняющее_значение])
где
текст — текст, который нужно разделить.
разделитель_столбцов — необязательный аргумент. Задает текст, помечающий точку, в которой надо разделить текст по столбцам.
разделитель_строк — необязательный аргумент. Задает текст, помечающий точку, в которой надо разделить текст по строкам.
игнорировать_пустые — необязательный аргумент. Позволяет задать значение TRUE, чтобы игнорировать последовательные разделители. По умолчанию имеет значение FALSE, которое создает пустую ячейку.
сопоставление — необязательный аргумент. Если задано значение 1, выполняет сопоставление без учета регистра. По умолчанию (0) выполняет сопоставление с учетом регистра.
заполняющее_значение — задает значение, которым нужно дополнить результат. Значение по умолчанию: #N/A.
Чтобы применить функцию ТЕКСТРАЗД,
- выделите ячейку, в которой требуется отобразить результат,
-
щелкните по значку Вставить функцию , расположенному на верхней панели инструментов,
или щелкните правой кнопкой мыши по выделенной ячейке и выберите в меню команду Вставить функцию,
или щелкните по значку перед строкой формул, - выберите из списка группу функций Текст и данные,
- щелкните по функции ТЕКСТРАЗД,
- введите требуемые аргументы через точку с запятой,
- нажмите клавишу Enter.
Результат будет отображен в выбранной ячейке.
Вернуться на предыдущую страницу
Попробуйте бесплатно
Не нужно ничего устанавливать,
чтобы увидеть все функции в действии
Содержание
- ФУНКЦИЯ TEXTSPLIT
- Синтаксис
- Замечания
- Примеры
- Разделение текста в Microsoft Excel
- Способ 1: Использование автоматического инструмента
- Способ 2: Создание формулы разделения текста
- Шаг 1: Разделение первого слова
- Шаг 2: Разделение второго слова
- Шаг 3: Разделение третьего слова
- Разделение текста по строкам в excel
- Разделение текста на столбцы с помощью мастера распределения текста по столбцам
- Распределение содержимого ячейки на соседние столбцы
- Помогите текст разбить на ячейки по строкам
- Разбить текст ячейки (строки), содержащий разделитель, на строки
- Редактирование ячейки в Excel и разбиение текста на несколько строк
- Редактирование строки текста в ячейках
- Как сделать несколько строк в ячейке Excel?
- Режим редактирования
- Разделение текста в ячейке, на строки.
- Разделение текста по строкам
ФУНКЦИЯ TEXTSPLIT
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. При необходимости измените ширину столбцов, чтобы видеть все данные.
Разделите имя и фразу с помощью общего разделителя.
Источник
Разделение текста в Microsoft Excel
Способ 1: Использование автоматического инструмента
В Excel есть автоматический инструмент, предназначенный для разделения текста по столбцам. Он не работает в автоматическом режиме, поэтому все действия придется выполнять вручную, предварительно выбирая диапазон обрабатываемых данных. Однако настройка является максимально простой и быстрой в реализации.
- С зажатой левой кнопкой мыши выделите все ячейки, текст которых хотите разделить на столбцы.
- После этого перейдите на вкладку «Данные» и нажмите кнопку «Текст по столбцам».
- Появится окно «Мастера разделения текста по столбцам», в котором нужно выбрать формат данных «с разделителями». Разделителем чаще всего выступает пробел, но если это другой знак препинания, понадобится указать его в следующем шаге.
Из этой инструкции можно сделать вывод, что использование такого инструмента оптимально в тех ситуациях, когда разделение необходимо выполнить всего один раз, обозначив для каждого слова новый столбец. Однако если в таблицу постоянно вносятся новые данные, все время разделять их таким образом будет не совсем удобно, поэтому в таких случаях предлагаем ознакомиться со следующим способом.
Способ 2: Создание формулы разделения текста
В Excel можно самостоятельно создать относительно сложную формулу, которая позволит рассчитать позиции слов в ячейке, найти пробелы и разделить каждое на отдельные столбцы. В качестве примера мы возьмем ячейку, состоящую из трех слов, разделенных пробелами. Для каждого из них понадобится своя формула, поэтому разделим способ на три этапа.
Шаг 1: Разделение первого слова
Формула для первого слова самая простая, поскольку придется отталкиваться только от одного пробела для определения правильной позиции. Рассмотрим каждый шаг ее создания, чтобы сформировалась полная картина того, зачем нужны определенные вычисления.
- Для удобства создадим три новые столбца с подписями, куда будем добавлять разделенный текст. Вы можете сделать так же или пропустить этот момент.
Полностью созданная формула имеет вид =ЛЕВСИМВ(A1;ПОИСК(» «;A1)-1) , вы же можете создать ее по приведенной выше инструкции или вставить эту, если условия и разделитель подходят. Не забывайте заменить обрабатываемую ячейку.
Шаг 2: Разделение второго слова
Самое трудное — разделить второе слово, которым в нашем случае является имя. Связано это с тем, что оно с двух сторон окружено пробелами, поэтому придется учитывать их оба, создавая массивную формулу для правильного расчета позиции.
- В этом случае основной формулой станет =ПСТР( — запишите ее в таком виде, а затем переходите к окну настройки аргументов.
Формула получилась большая, и не все пользователи понимают, как именно она работает. Дело в том, что для поиска строки пришлось использовать сразу несколько функций, определяющих начальные и конечные позиции пробелов, а затем от них отнимался один символ, чтобы в результате эти самые пробелы не отображались. В итоге формула такая: =ПСТР(A1;ПОИСК(» «;A1)+1;ПОИСК(» «;A1;ПОИСК(» «;A1)+1)-ПОИСК(» «;A1)-1) . Используйте ее в качестве примера, заменяя номер ячейки с текстом.
Шаг 3: Разделение третьего слова
Последний шаг нашей инструкции подразумевает разделение третьего слова, что выглядит примерно так же, как это происходило с первым, но общая формула немного меняется.
- В пустой ячейке для расположения будущего текста напишите =ПРАВСИМВ( и перейдите к аргументам этой функции.
Источник
Разделение текста по строкам в excel
Разделение текста на столбцы с помощью мастера распределения текста по столбцам
Смотрите также без цитирования обойтись. : Отлично, спасибо большое.Юрий М перевести число и
ее отображение. обладают функционалом простейшего1 Из строки формул.
обозначить мой разделитель arrTmp1(j) .Cells(lCnt, 3) Explicit Sub jjj_split() в файл и: В файле на
ячейки, кликаете, чтобы указать способ распределения текста по листе, где должныС помощью мастера распределенияmer1k А теперь последний: В примере была
сумму прописью вВ режиме редактирования работают текстового редактора. Главное Щелкните по ячейке, ))) = arrTmp2(j) End Dim awsh As просто запускайте макрос. копии листа1 давитеТекст по столбцам разбиения текста на
столбцам см. в отображаться разделенные данные. текста по столбцам
: Ну да, цитаты вопросик думаю. Как одна строка и Excel. все стандартные комбинации
отличие – это в которой необходимо. надеюсь понятно написала With ‘ wshResult Worksheet Dim wshResult
Или просто - кнопку с побудительнойи указываете в
Распределение содержимого ячейки на соседние столбцы
разных столбцах. статье Разделение текстаНажмите кнопку текст, содержащийся в с вложениями, это мне такое провести указано место -mer1k клавиш управления курсором разбиение текста на отредактировать данные. В )) Next j Next As Worksheet Dim откройте файл моего надписью и проверяйте качестве разделителей ЗапятуюПримечание: по столбцам сГотово одной ячейке, можно беспорядочно конечно. Будем знать)
с 12000 строками? куда выгружать результат.: Добрый день. Скажите, клавиатуры, как и строки. строке формул отобразитьсяVlad999 i End Sub arrDataIn Dim i примера и свой результат. и пробел. Ячейку Для получения справки по
разделить на несколько. В любом случае Мне ж получается Если исходных строк каким образом можно в других программах
Внимание! содержимое, которое доступно: СИМВОЛ(10) и есть
As Long Dim — и запускайтеVoditel_CDROMa вывода я указал заполнению все действияМожно объединить ячейки, содержащиеПримечание:Выделите ячейку или столбец Спасибо Вам) нужно изменить макрос? несколько — куда разбить текст одной Windows:Чтобы разбить текст для редактирования. Сделайте этот разделитель.: Спасибо. n As Long макрос через Alt+F8/: Как вариант с B6 (Лист2)
мастера читайте статью функцию СЦЕП илиМы стараемся как с текстом, который
vikttur Только как правильно? выгружать результат? Может ячейки, на строки?Клавиша «DELETE» удаляет символ на строки в необходимые изменения, после
не совсем понялJack Famous Dim arrTmp1$(), arrTmp2$() Макрос-то делался под помощью функции SubStr(ссылка
А в итоговой Разделение текста по функцию СЦЕПИТЬ. можно оперативнее обеспечивать вы хотите разделить.: Знайте. И желательноЮрий М в соседний столбец? Поиск юзал, но справа, а «Backspace» одной ячейке Excel
Помогите текст разбить на ячейки по строкам
чего нажмите Enter вопрос. Приложите файл: irakli78, mts2050, доброго Dim n2 As данные из примера. на строку, номер таблице я записал различным столбцам сВыполните следующие действия.
вас актуальными справочными
На вкладке
пройтись и исправить,: А Вы пробовалиmer1k нашел только способ слева. нужно нажать комбинацию или кликните по пример, так есть, времени суток! Недавно Long Dim jА если там фрагмента, разделитель). См.
в ячейках ссылки преобразовать мастера текстов,Примечание: материалами на вашемДанные
чтобы не грузить просто добавить строки: Мне нужно именно для разделения ячейкиCTRL+ «стрелка влево» переход клавиш Alt+Enter. Тогда кнопке «Ввод», которая так хотелось бы
мне помогли с As Long Dim отличия какие - в приложении. на ти самые
или нажмите кнопку
Диапазон, содержащий столбец, который языке. Эта страницанажмите кнопку модераторов.
и нажать на раскидать текст на на СТОЛБЦЫ. За на начало слова,
вы сможете перейти размещена в начале получить сделанный вручную. такой же проблемой. lCnt As Long
надо смотреть иirakli78 B6 и т.д.Справка вы хотите разделить
переведена автоматически, поэтомуТекст по столбцамLogin_excel кнопку? строки, чтоб и ранее спасибо. Пример а CTRL+ «стрелка
на новую строку строки формул. ДляФишкаУниверсальное решение.
Set awsh = макрос корректировать, быть: Просто не хватаетПодойдёт так, Ираклий?в мастере разделения может включать любое
ее текст может.: Привет. Подскажите, какИ не нужно дубликаты удалить, и прикрепляю. Использую майкрософт
вправо» – в в ячейке. В отмены изменений можно: Ну как-то такА как заполнить ActiveSheet With awsh может. слов благодарности!! ЧестноЮрий М текста столбцов.
количество строк, но содержать неточности иВ разнести многострочный текст меня цитировать, да
посмотреть количество номеров. 2007 конец слова. том месте текста,
нажать клавишу «Esc» )) пустые ячейки значениями
arrDataIn = .Range(«A2:C»AVKL говоря пока не: wowik7, количество переносовirakli78 он может содержать грамматические ошибки. Длямастере распределения текста по по отдельным строкам ещё и целиком.Я пробовал разбитьSmiley«HOME» смещает курсор клавиатуры где находится курсор или кнопку «Отмена»Фишка из верхних, узнаете & .Cells(.Rows.CountLarge, 1).End(xlUp).Row).Value: Добрый день Пытливый!
проверял, зашел с можно узнать программно: Добрый день! Буду не более одного нас важно, чтобы
столбцам из одной ячейки?
Зачем. эти данные на: mer1k, разбейте его
в начало строки, клавиатуры, появится перенос (возле кнопки «Ввод»).: ой, забыла написать, (готовый макрос в .Parent.Sheets.Add , awsh,Спасибо большое за телефона. но все
)) очень благодарен, если столбца. Это важные
эта статья былаустановите переключательBema
mer1k столбцы. Т.е. текст на столбцы с
а «END» – строки и соответственно2 Из самой ячейки. как надо ))
комментариях) 1, xlWorksheet End решение! Очень помогло равно спасибо!!Юрий М кто-нибудь посоветует как из них достаточно вам полезна. Просимс разделителями: Привет.: Прошу прощения. Просто разбивается в своей помощью «текст по в конец. начало новой. Перейдите на ячейкуVlad999Фишка With ‘ awsh в работе!) завтра посмотрю и: irakli78, зачем Вам можно разбить текст пустыми столбцами справа вас уделить паруи нажмите кнопку1. Формулой в предыдущем примере, же строке, только столбцам» и потомЕсли в тексте болееВ обычных редакторах текст и нажмите клавишу: Решение макросом в: Необходимо разбить текст Set wshResult =mts2050 обязательно сообщу! Еще объединённые ячейки? Настрадаетесь который в одной от выбранных столбец, секунд и сообщить,Далее2. Макросом пробовал. не получалось. на столбцы. Но транспонируйте. одной строки то делится на строки F2 или сделайте теме: Разбить текст
в ячейке (с ActiveSheet n =
: Подскажите как сделать раз спасибо! потом. ячейке на несколько который будет предотвратить помогла ли она
.3. Текст по Сейчас сделал, и как потом сСергей
Разбить текст ячейки (строки), содержащий разделитель, на строки
комбинации CTRL+HOME и нажатием клавиши Enter, по ней двойной ячейки (строки), содержащий разделителями «Alt+Enter») на
UBound(arrDataIn, 1) lCnt что бы текстirakli78Все_просто строк с соблюдением перезапись по данные, вам, с помощью
Выберите столбцам. все хорошо. Огромное этих столбцов разместить: можно так CTRL+END перемещают курсор но в Excel щелчок мышкой. Тогда
разделитель, на строки отдельные строки = 0 For разбивался не в: Хотел бы узнать,: Человек по сути некоторых параметров.
которые распространяться данные кнопок внизу страницы.
разделителиalexleoix спасибо, оочень упростили
номера в строки,Юрий М в начало или данное действие выполняет в ячейке появится
макросомGenbor i = 1
одной ячейке, а а как данный просит написать макрос,
Пример прилагаю в любой смежных Для удобства такжедля своих данных.: 4. Power Query задачу.
Редактирование ячейки в Excel и разбиение текста на несколько строк
причем за раз?: Или так. в конец целого функцию подтверждения вода курсор клавиатуры, аЕсли ячейка содержит большой: Код =ПОДСТАВИТЬ(A1;»»;СИМВОЛ(10)) - To n arrTmp1
в нескольких и макрос использовать уже а вы наЗаранее благодарю. столбцах. При необходимости приводим ссылку на Например,БМВПо поводу цитирования.
Редактирование строки текста в ячейках
Можно конечно взятьmer1k
- текста. данных и переход ее размер изменится текст или сложную это символ, на = Split(arrDataIn(i, 2) соотносился между ними. в другом файле? него взъелись.wowik7 вставьте количество пустые оригинал (на английскомзапятую: 5. Word ( А что тут и скопировать строку: Спасибо. Как этим
- Примечание. Точно так же на следующую ячейку. на время редактирования. формулу, но с основании которого будет & «|», «|») Пример в файле.HugoЯ, к сожалению,: Скажите, а известно, столбцы, будет достаточно языке) .и и это не такого? Именно для в первый столбец пользоваться? Добавлять туда
редактируются: формулы, функции, Поэтому как написать После всех изменений ошибками, то нет переноситься строка (запятая, arrTmp2 = Split(arrDataIn(i,JayBhagavan
: Описка, исправьте в
Как сделать несколько строк в ячейке Excel?
не так силен сколько будет слов для хранения каждогоМожно разделить содержимого ячейкипробел шутка, копируем вставляем
этого кнопочка и
путем транспонирования. С свой текст? числа, даты и несколько строк в нажмите Enter или смысла удалять их точка с запятой, 3) & «|»,: mts2050, и Вам irakli78.xls (45.5 КБ) в макросах. Хотя в строке? Вот составные части распределенных
и распространение составные. Данные можно предварительно в word. копируем, создана. Всю жизнь одной строкой тоПопробовал свое ввести, логические значения. ячейке Excel жмите Tab или кликните вводить все данные точка и т.д.) «|») n2 =
здравия. F на G: сейчас все равно в приложенной книге данных. части нескольких смежных просмотреть в окне вставляем в excel цитирую удается, но вот но в строкиСтоит еще отметить, что Alt+Enter.
Режим редактирования
мышкой на любую заново. Рациональнее ихФишка WorksheetFunction.Max(UBound(arrTmp1, 1) -Кол-во разделителей вRange(«G» & lngI
- стараюсь написать. 4 слова иВыделите ячейку, диапазон или
- ячеек. Например, еслиОбразец разбора данных )Юрий М с несколькими никак.
- текст он кидает простой режим редактированияОбратите внимание, что после другую ячейку. Для
- просто отредактировать.: а как в 1, UBound(arrTmp2, 1) соседних по горизонтали & «:G» &Юрий М все разделены запятой
весь столбец, где лист содержит.vikttur
: Цитировать нужно не Они раскидывается на только с первой позволяет задавать тексту разделения одной строки отмены редактирования нажмите
Для редактирования значений в формуле обозначить знак — 1) ReDim ячейках всегда одинаковое? lngI + UBound(strA)).Merge: Кто «взъелся»? ))
и пробелом. Известно, содержатся текстовые значения,Полное имяНажмите кнопку
Разделение текста в ячейке, на строки.
: 6. Ручка + бездумно, а с столбцы. строки. А как свой стиль оформления: в ячейке на клавишу «Esc». Excel предусмотрен специальный «разделение», которое ставится Preserve arrTmp1(0 Tomts2050Пытливый
Я только предупредил что разделение будет которые требуется разделить.столбца, можно разделить столбецДалее лист бумаги в
умом. И толькоВот снова скинул
с остальными быть? полужирный, курсив, подчеркнутый
две и болееПримечание. При редактировании не режим. Он максимально при помощи клавиш
n2) ReDim Preserve: Да количество разделителей: Если структура таблицы про объединение )) таким же иНа вкладке на двух столбцов. клеточку то, что ДЕЙСТВИТЕЛЬНО табличку. Как например У меня этих и цвет. с помощью клавиш
забывайте о кнопках прост, но гармонично Alt+Enter, т.е. перенос arrTmp2(0 To n2) совпадает. такая же (столбцы А макрос там слов обязательно 4Данные
—Выберите значение в разделеБМВ нужно. Ну вот все это разделить, строк почти 12000,
Обратите внимание, что стиль Alt+Enter, то автоматически отмены / повтора объединил в себе на др.строку. как его For j =JayBhagavan и шапка расположены не очень и ?в группеимениФормат данных столбца: vikttur, — Почему зачем, например, в причем уместив только в каждой строке текста не отображается активируется опция «формат
действий на панели толь самые полезные записать в формулу? 0 To n2: В примере - так, как в
сложный. Как вариант, метод
Работа с даннымииили используйте то, не в линейку? цитате в строки в бывает и по в строке формул, ячеек»-«выравнивание»-«перенос по словам».
быстрого доступа. Или функции текстового редактора.Приведенную Вами формулу, lCnt = lCnt не совпадает:4 и
примере), а такжеwowik7 с использованием «Данные»нажмите кнопку
Фамилии которое Excel выберетИли от ExCELL»Прикрепленные файлы первом же столбце? одному номеру, а поэтому его удобнее Притом что сама
о комбинациях клавиш Ничего лишнего в я уже видела + 1 With 3. Учту. нет ячеек в
: Изменил своё первое —> «Работа сТекст по столбцамстолбцом. автоматически. отталкиваемся?primer 002.xlsm (17.68Юрий М
есть даже и
задавать, редактируя непосредственно эта функция не CTRL+Z и CTRL+Y. нем нет. здесь в других
wshResult .Cells(lCnt, 1)JayBhagavan столбце D с сообщение. Прикрепил там данными» —> «Текст.
Советы:В полеvikttur КБ)»? Что это: Вариант.
Разделение текста по строкам
по 20 номеров в самой ячейке. разбивает строку наРедактировать содержимое ячеек можно
вопросах, но я = arrDataIn(i, 1)
: запускать когда целевой
одним словом -
файл по столбцам»
Следуйте инструкциям в
Поместить в: Именно. Без ячеек даёт? Да иmer1k через запятую.Читайте так же: как слова, а оптимизирует
В режиме редактирования, ячейки двумя способами: не знаю, как .Cells(lCnt, 2) =
лист активный Option то переносите кодПытливыйВыделяете две нужныхСтолбцах мастера
Сведения об альтернативном способевыберите место на никак
Источник
Как разделить текст в ячейке Excel?
Добрый день уважаемый читатель!
В статье я хочу рассмотреть вопрос о том, как и какими способами, возможно, разделить текст в ячейке, который оказался склеен! Если вы часто работаете с импортированными данными в Excel, то периодически встречаете такие проблемы как выгруженные точки вместо запятых, неправильный формат данных, слепленные слова или значения и многое другое. На этот случай Excel предоставляет несколько возможностей по нормализации данных и у каждого из них есть свои плюсы и минуса.
Разобрать слитый текст на необходимые составляющие возможно произвести с помощью:
Мастер разбора текстов
Рассмотрим самый простой способ разделить текст в ячейке, не по сути, а по исполнению. Для примера, очень наглядно это можно продемонстрировать на ФИО в одной ячейке, которые необходимо разделить на отдельные столбики для удобства сортировки и фильтрации.
Для выполнения задачи вызываем диалоговое окно «Мастер текстов (разбор)» и в 3 шага разделяем текст:
- Для начала нужно выделить данные, которые необходимо разделить, следующим шагом на вкладке «Данные» в разделе «Работа с данными» нажимаете иконку «Текст по столбцам» и в вызванном диалоговом окне мастера указываем формат рабочего текста. Выбираем 2 вида форматов:
- С разделителями – это когда существует текст или символ, который условно будет отделять будущее содержимое отдельных ячеек;
- Фиксированной ширины – это когда при помощи пробелов в тексте имитируется столбики одинаковой ширины.
- Вторым шагом, в нашем примере, указываем символ, выполняющий роль разделителя. В случаях, когда в тексте идут подряд пару разделителей, несколько пробелов, к примеру, то установка флажка для пункта «Считать последовательные разделители одним» укажет для Excel принимать их за один разделитель. Дополнительное условие «Ограничитель строк» поможет указать, что текстовые значения, содержащиеся в кавычках не делить (к примеру, название фирмы «Рудольф, Петер и Саймон»);
- Последним шагом, для уже разделённых столбиков, нужно указать в диалоговом окне мастера, предварительно выделив их, выбрать необходимый формат получаемых данных:
- Общий – не проводит изменения данных, оставляя их в первоначальном виде, будет оптимальным выбором в большинстве случаев;
- Текстовый – данный формат, в основном, необходим для столбиков с числовыми значениями, которые программа в обязательном порядке должна интерпретировать как текст. (К примеру, это числа с разделителем по тысяче или номер пластиковой карточки);
- Дата – этот формат используется для столбиков с датами, кстати, формат самой даты можно выбрать в выпадающем списке.
В случае, когда будете использовать символы, которые не похожи на стандартные, назначенные в региональных настройках, можете использовать кнопку «Подробнее» для правильного их распознавания.
Рассоединяем текст с помощью формул
Для этого способа нам понадобятся возможности сочетаний функций ПОИСК и ПСТР. При помощи функции ПОИСК мы будем искать все пробелы, которые есть между словами (например, между фамилией, именем и отчеством). Потом функцией ПСТР выделяем необходимое количество символов для дальнейшего разделения.
И если с первыми двумя словами понятно, что и как разделять, то разделителя для последнего слова нет, а это значит что нужно указать в качестве аргумента условно большое количество символов, как аргумент «число_знаков» для функции ПСТР, например, 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.
Поскольку вас интересует автоматическое деление текста, значит надо написать хорошую функцию на VBA и внедрить ее в рабочую книгу. Для начала переходим на вкладку «Разработчик» и выбираем «Visual Basic» или вызываем эту возможность с помощью горячего сочетания клавиш Alt+F11. (детальнее в статье «Как создать макрос в Excel»).
Создаем новый модуль в меню «Insert» наживаем пункт «Module» и переносим в него нижеприведенный код:
Как разделить текст в MS Excel
Многие знают, что для того, чтобы объединить текст в двух ячейках достаточно воспользоваться функцией СЦЕПИТЬ (CONCATENATE), однако, как быть, если необходимо не объединить, а наоборот разделить текст в ячейке? Если количество символов, которое необходимо отделить известно (не важно справа или слева), тогда можно воспользоваться функциями ЛЕВСИМВ (LEFT) или ПРАВСИМВ (RIGHT), в зависимости с какой стороны необходимо выделить определенное количество символов.
Однако, как быть, если необходимо разделить ячейку в которой заведомо не известно количество символов, которые нужно отделить, а известно лишь сколько частей необходимо получить в результате операции. Самым простым примером такой ситуации может быть необходимость выделить из ячейки в которой занесено ФИО человека, отдельно фамилию, имя и отчество. Фамилии у всех разные, поэтому заранее узнать количество символов, которые необходимо отделить, не получится.
На Ваше обозрение представим два способа разделения текста. Один очень быстрый — для тех кому надо просто разделить текст заменив имеющийся, а второй с использованием формул.
Первый способ — супер быстрый.
На самом деле в MS Excel существует встроенная возможность быстрого разделения текста в ячейке, если там присутствует или присутствуют разделитель/разделители (например, простой пробел или запятая). Причем таких разделителей может быть несколько, т.е. текст будет разделятся если в строке присутствует или пробел, или точка с запятой или запятая и т.д.
Для этого необходимо выделить ячейки с текстом, который необходимо разделить и воспользоваться командой «Текст по столбцам».
В англоязычной версии MS Excel данная команда звучит как «Text to Columns» вкладки «DATA».
После несложных подсказок мастера (на самом деле, в нашем примере после выбора разделителя — пробела можно смело жать «Готово»)
А вот и, собственно, результат.
Второй способ — с использованием формул.
В такой ситуации понадобится сочетание функций: ПОИСК (SEARCH) и ПСТР (MID). Для начала, с помощью первой находим пробел между словами (между фамилией и именем и именем и отчеством), а потом подключаем вторую для того, чтобы выделить необходимое количество символов. Грубо говоря, первой функцией определяем количество символов, а второй — уже разделяем.
Кроме того, поскольку разделительного знака в конце строки нет, то количество символов в последнем слове (нашем случае — отчестве) вычислить не удастся, но это не проблема, достаточно указать заведомо большее количество символов в качестве аргумента «число знаков» функции ПСТР, например, 100.
Рассмотрим вышесказанное на примере. Сначала, для лучшего понимания, разнесем формулы и, таким образом, разделим весь процесс на два этапа.
Для того, чтобы определить количество символов, которые необходимо выделить в строке, необходимо определить позиции разделителей (в нашем случае пробела) их будет на один меньше нежели слов в ячейке.
Поскольку информация о количестве необходимых символах получена, следующим этапом будет использование функции ПСТР (MID).
Здесь, в качестве аргументов, используются промежуточные значения, полученные с помощью функции ПОИСК. Для последней колонки количество символов неизвестно, поэтому было взято заведомо бОльшее количество символов (в нашем случае 100).
Теперь попробуем соединить промежуточные расчеты в одну формулу.
Если текст в ячейке необходимо разделить лишь на две части, то необходимо произвести поиск лишь одного пробела (либо другого разделителя, который находится между словами), а для разделения на 4 и больше частей формулу придется усложнить поиском 3го, 4го и т.д. разделителей.
Делим слипшийся текст на части
Итак, имеем столбец с данными, которые надо разделить на несколько отдельных столбцов. Самые распространенные жизненные примеры:
- ФИО в одном столбце (а надо — в трех отдельных, чтобы удобнее было сортировать и фильтровать)
- полное описание товара в одном столбце (а надо — отдельный столбец под фирму-изготовителя, отдельный — под модель для построения, например, сводной таблицы)
- весь адрес в одном столбце (а надо — отдельно индекс, отдельно — город, отдельно — улица и дом)
- и т.д.
Способ 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 как в предыдущем способе, вставьте туда новый модуль и скопируйте в него код этой функции:
Теперь можно использовать эту функцию на листе и привести слипшийся текст в нормальный вид:
Как разделить текст по ячейкам формула в Excel
Часто приходится оптимизировать структуру данных после импорта в Excel. Некоторые разные значения попадают в одну и туже ячейку образуя целую строку как одно значение. Возникает вопрос: как разбить строку на ячейки в Excel. Программа располагает разными поисковыми функциями: одни ищут по ячейках другие ищут по содержимому ячеек. Ведь выполнять поиск по текстовой строке, которая содержится в ячейке ¬– это также распространенная потребность пользователей Excel. Их мы и будем использовать для разделения строк.
Как разделить текст на две ячейки Excel
Допустим на лист Excel были импортированные данные из другой программы. Из-за несовместимости структуры данных при импорте некоторые значение из разных категорий были внесены в одну ячейку. Необходимо из этой ячейки отделить целые числовые значения. Пример таких неправильно импортированных данных отображен ниже на рисунке:
Сначала определим закономерность, по которой можно определить, что данные из разных категорий, несмотря на то, что они находятся в одной и той же строке. В нашем случае нас интересуют только числа, которые находятся вне квадратных скобок. Каким способом можно быстро выбрать из строк целые числа и поместить их в отдельные ячейки? Эффективным решением является гибкая формула основана на текстовых функциях.
В ячейку B3 введите следующую формулу:
Теперь скопируйте эту формулу вдоль целого столбца:
Выборка чисел из строк в отдельные ячейки.
Описание формулы для разделения текста по ячейкам:
Функция ПСТР возвращает текстовое значение содержащие определенное количество символов в строке. Аргументы функции:
- Первый аргумент – это ссылка на ячейку с исходным текстом.
- Второй аргумент – это позиция первого символа, с которого должна начинаться разделенная строка.
- Последний аргумент – это количество символов, которое должна содержать разделенная строка.
С первым аргументом ПСТР все понятно – это ссылка на ячейку A3. Второй аргумент мы вычисляем с помощью функции НАЙТИ(«]»;A3)+2. Она возвращает очередной номер символа первой закрывающейся квадратной скобки в строке. И к этому номеру мы добавляем еще число 2, так как нам нужен номер символа после пробела за квадратной скобкой. В последнем аргументе функция вычисляет какое количество символов будет содержать разделенная строка после разделения, учитывая положение квадратной скобки.
Обратите внимание! Что в нашем примере все исходные и разделенные строки имеют разную длину и разное количество символов. Именно поэтому мы называли такую формулу – гибкой, в начале статьи. Она подходит для любых условий при решении подобного рода задач. Гибкость придает ей сложная комбинация из функций НАЙТИ. Пользователю формулы достаточно определить закономерность и указать их в параметрах функций: будут это квадратные скобки либо другие разделительные знаки. Например, это могут быть пробелы если нужно разделить строку на слова и т.п.
В данном примере функция НАЙТИ во втором аргументе определяет положение относительно первой закрывающейся скобки. А в третьем аргументе эта же функция вычисляет положение нужного нам текста в строке относительно второй открывающийся квадратной скобки. Вычисление в третьем аргументе более сложное и оно подразумевает вычитание одной большей длинны текста от меньшей. А чтобы учитывать еще 2 пробела следует вычитать число 3. В результате чего получаем правильное количество символов в разделенной строке. С помощью такой гибкой формулы можно делать выборку разной длинны разделенного текста из разных длинны исходных строк.
Как разделить текст в Excel по столбцам?
Часто мы сталкиваемся с проблемой, когда у нас есть данные только в одном столбце, при этом было бы гораздо удобнее расцепить текст на несколько столбцов.
Например, разделить столбец с полными именами (Фамилия Имя Отчество) на отдельные столбцы с именами (Фамилия, Имя, Отчество).
Давайте разберемся как разбить текст в ячейке по столбцам на конкретном примере.
Предположим у нас имеется таблица с ФИО сотрудников компании:
Исходные данные для разделения
Для того, чтобы разделить текст в Excel по столбцам идем на панель вкладок и выбираем Данные -> Работа с данными -> Текст по столбцам:
Указание формата данных
На первом шаге выбираем формат данных:
Шаг 1. Указание формата данных
На выбор есть 2 варианта формата данных:
- С разделителями — разделение происходит по знаку-разделителю (пробел, запятая, точка и т.д.);
- Фиксированная ширина — разделение происходит по фиксированной ширине столбца.
Выбор разделителя для данных
В случае выбора формата с разделителями, как в нашем примере, на втором шаге выбираем какой конкретно знак-разделитель мы будем использовать:
Шаг 2. Выбор разделителя для данных
Можно выбрать как из стандартных знаков (знак табуляции, точка с запятой, запятая, пробел), так и из любых других (например, точка, символы $, @ и т.п.).
Флажок Считать последовательные разделители одним необходим если в исходных данных разделитель может быть продублирован (например, двойной пробел и т.д.).
Параметр Ограничитель строк позволяет не разделять по столбцам текст заключенный в кавычки.
Выбор формата данных для каждого столбца
На третьем шаге выбираем формат данных для каждого нового сформированного столбца:
Шаг 3. Выбор формата данных для каждого столбца
Содержание
- Способ 1: Использование автоматического инструмента
- Способ 2: Создание формулы разделения текста
- Шаг 1: Разделение первого слова
- Шаг 2: Разделение второго слова
- Шаг 3: Разделение третьего слова
- Вопросы и ответы
Способ 1: Использование автоматического инструмента
В Excel есть автоматический инструмент, предназначенный для разделения текста по столбцам. Он не работает в автоматическом режиме, поэтому все действия придется выполнять вручную, предварительно выбирая диапазон обрабатываемых данных. Однако настройка является максимально простой и быстрой в реализации.
- С зажатой левой кнопкой мыши выделите все ячейки, текст которых хотите разделить на столбцы.
- После этого перейдите на вкладку «Данные» и нажмите кнопку «Текст по столбцам».
- Появится окно «Мастера разделения текста по столбцам», в котором нужно выбрать формат данных «с разделителями». Разделителем чаще всего выступает пробел, но если это другой знак препинания, понадобится указать его в следующем шаге.
- Отметьте галочкой символ разделения или вручную впишите его, а затем ознакомьтесь с предварительным результатом разделения в окне ниже.
- В завершающем шаге можно указать новый формат столбцов и место, куда их необходимо поместить. Как только настройка будет завершена, нажмите «Готово» для применения всех изменения.
- Вернитесь к таблице и убедитесь в том, что разделение прошло успешно.
Из этой инструкции можно сделать вывод, что использование такого инструмента оптимально в тех ситуациях, когда разделение необходимо выполнить всего один раз, обозначив для каждого слова новый столбец. Однако если в таблицу постоянно вносятся новые данные, все время разделять их таким образом будет не совсем удобно, поэтому в таких случаях предлагаем ознакомиться со следующим способом.
Способ 2: Создание формулы разделения текста
В Excel можно самостоятельно создать относительно сложную формулу, которая позволит рассчитать позиции слов в ячейке, найти пробелы и разделить каждое на отдельные столбцы. В качестве примера мы возьмем ячейку, состоящую из трех слов, разделенных пробелами. Для каждого из них понадобится своя формула, поэтому разделим способ на три этапа.
Шаг 1: Разделение первого слова
Формула для первого слова самая простая, поскольку придется отталкиваться только от одного пробела для определения правильной позиции. Рассмотрим каждый шаг ее создания, чтобы сформировалась полная картина того, зачем нужны определенные вычисления.
- Для удобства создадим три новые столбца с подписями, куда будем добавлять разделенный текст. Вы можете сделать так же или пропустить этот момент.
- Выберите ячейку, где хотите расположить первое слово, и запишите формулу
=ЛЕВСИМВ(
. - После этого нажмите кнопку «Аргументы функции», перейдя тем самым в графическое окно редактирования формулы.
- В качестве текста аргумента указывайте ячейку с надписью, кликнув по ней левой кнопкой мыши на таблице.
- Количество знаков до пробела или другого разделителя придется посчитать, но вручную мы это делать не будем, а воспользуемся еще одной формулой —
ПОИСК()
. - Как только вы запишете ее в таком формате, она отобразится в тексте ячейки сверху и будет выделена жирным. Нажмите по ней для быстрого перехода к аргументам этой функции.
- В поле «Искомый_текст» просто поставьте пробел или используемый разделитель, поскольку он поможет понять, где заканчивается слово. В «Текст_для_поиска» укажите ту же обрабатываемую ячейку.
- Нажмите по первой функции, чтобы вернуться к ней, и добавьте в конце второго аргумента
-1
. Это необходимо для того, чтобы формуле «ПОИСК» учитывать не искомый пробел, а символ до него. Как видно на следующем скриншоте, в результате выводится фамилия без каких-либо пробелов, а это значит, что составление формул выполнено правильно. - Закройте редактор функции и убедитесь в том, что слово корректно отображается в новой ячейке.
- Зажмите ячейку в правом нижнем углу и перетащите вниз на необходимое количество рядов, чтобы растянуть ее. Так подставляются значения других выражений, которые необходимо разделить, а выполнение формулы происходит автоматически.
Полностью созданная формула имеет вид =ЛЕВСИМВ(A1;ПОИСК(" ";A1)-1)
, вы же можете создать ее по приведенной выше инструкции или вставить эту, если условия и разделитель подходят. Не забывайте заменить обрабатываемую ячейку.
Шаг 2: Разделение второго слова
Самое трудное — разделить второе слово, которым в нашем случае является имя. Связано это с тем, что оно с двух сторон окружено пробелами, поэтому придется учитывать их оба, создавая массивную формулу для правильного расчета позиции.
- В этом случае основной формулой станет
=ПСТР(
— запишите ее в таком виде, а затем переходите к окну настройки аргументов. - Данная формула будет искать нужную строку в тексте, в качестве которого и выбираем ячейку с надписью для разделения.
- Начальную позицию строки придется определять при помощи уже знакомой вспомогательной формулы
ПОИСК()
. - Создав и перейдя к ней, заполните точно так же, как это было показано в предыдущем шаге. В качестве искомого текста используйте разделитель, а ячейку указывайте как текст для поиска.
- Вернитесь к предыдущей формуле, где добавьте к функции «ПОИСК»
+1
в конце, чтобы начинать счет со следующего символа после найденного пробела. - Сейчас формула уже может начать поиск строки с первого символа имени, но она пока еще не знает, где его закончить, поэтому в поле «Количество_знаков» снова впишите формулу
ПОИСК()
. - Перейдите к ее аргументам и заполните их в уже привычном виде.
- Ранее мы не рассматривали начальную позицию этой функции, но теперь там нужно вписать тоже
ПОИСК()
, поскольку эта формула должна находить не первый пробел, а второй. - Перейдите к созданной функции и заполните ее таким же образом.
- Возвращайтесь к первому
"ПОИСКУ"
и допишите в «Нач_позиция»+1
в конце, ведь для поиска строки нужен не пробел, а следующий символ. - Кликните по корню
=ПСТР
и поставьте курсор в конце строки «Количество_знаков». - Допишите там выражение
-ПОИСК(" ";A1)-1)
для завершения расчетов пробелов. - Вернитесь к таблице, растяните формулу и удостоверьтесь в том, что слова отображаются правильно.
Формула получилась большая, и не все пользователи понимают, как именно она работает. Дело в том, что для поиска строки пришлось использовать сразу несколько функций, определяющих начальные и конечные позиции пробелов, а затем от них отнимался один символ, чтобы в результате эти самые пробелы не отображались. В итоге формула такая: =ПСТР(A1;ПОИСК(" ";A1)+1;ПОИСК(" ";A1;ПОИСК(" ";A1)+1)-ПОИСК(" ";A1)-1)
. Используйте ее в качестве примера, заменяя номер ячейки с текстом.
Шаг 3: Разделение третьего слова
Последний шаг нашей инструкции подразумевает разделение третьего слова, что выглядит примерно так же, как это происходило с первым, но общая формула немного меняется.
- В пустой ячейке для расположения будущего текста напишите
=ПРАВСИМВ(
и перейдите к аргументам этой функции. - В качестве текста указывайте ячейку с надписью для разделения.
- В этот раз вспомогательная функция для поиска слова называется
ДЛСТР(A1)
, где A1 — та же самая ячейка с текстом. Эта функция определяет количество знаков в тексте, а нам останется выделить только подходящие. - Для этого добавьте
-ПОИСК()
и перейдите к редактированию этой формулы. - Введите уже привычную структуру для поиска первого разделителя в строке.
- Добавьте для начальной позиции еще один
ПОИСК()
. - Ему укажите ту же самую структуру.
- Вернитесь к предыдущей формуле «ПОИСК».
- Прибавьте для его начальной позиции
+1
. - Перейдите к корню формулы
ПРАВСИМВ
и убедитесь в том, что результат отображается правильно, а уже потом подтверждайте внесение изменений. Полная формула в этом случае выглядит как=ПРАВСИМВ(A1;ДЛСТР(A1)-ПОИСК(" ";A1;ПОИСК(" ";A1)+1))
. - В итоге на следующем скриншоте вы видите, что все три слова разделены правильно и находятся в своих столбцах. Для этого пришлось использовать самые разные формулы и вспомогательные функции, но это позволяет динамически расширять таблицу и не беспокоиться о том, что каждый раз придется разделять текст заново. По необходимости просто расширяйте формулу путем ее перемещения вниз, чтобы следующие ячейки затрагивались автоматически.
Еще статьи по данной теме:
Помогла ли Вам статья?
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.
- Start with selecting your data. You can use more than one cell in a column.
- Click Data > Text to Columns in the Ribbon.
- 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.
- Click Next to continue
- Select the delimiters suitable to your data or choose a character length and click Next.
- 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.
- Click Finish to see the outcome.
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.
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.
- Select the cells containing the text.
- Click Data > From Sheet. If the data is not in an Excel Table, Excel converts it into an Excel Table first.
- Once the Power Query window is open, find the Split Column under the Transform tab and click to see the options.
- Select the approach that fits your data layout. The data in our example is using By Delimiter since the data is separated by “|”.
- Power Query will show the delimiter character. If you are not seeing the expected delimiter, choose from the list or enter it yourself.
- Click OK to split text.
- 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.
- 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:
- By calling the Text to Columns feature using VBA,
- 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