ГлавнаяБлогТекст по столбцам

Текст по столбцам в Excel: четыре способа и две ловушки

2 августа 20267 минИнструменты

Разложить слипшиеся значения по столбцам можно четырьмя способами, и различаются они тем, переживёт ли результат изменение исходных данных. Разбираю на мокапах мастер «Текст по столбцам» и две его ловушки — формат «Общий», который съедает ведущие нули у артикулов, и молчаливое затирание соседних столбцов, — а также мгновенное заполнение, формулы и Power Query.

Коротко
  • Мастер «Текст по столбцам» и Ctrl+E дают статичный результат, формулы и Power Query пересчитываются.
  • Третий шаг мастера пропускать нельзя: формат «Общий» превращает 007123 в 7123, а 12.05 в дату.
  • Разбивка ложится поверх соседних столбцов — вставьте пустые заранее или укажите «Поместить в:».
  • Ctrl+E выводит правило по вашему примеру: годится там, где разделителя нет вовсе.
  • В Excel 365 всё решает =ТЕКСТРАЗД(A2;", "), в Google Таблицах — =SPLIT(A2;",").
  • Power Query окупается со второго раза, когда выгрузка приходит регулярно.

Четыре способа и как выбрать

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

Четыре способа и как выбрать главный признак — пересчитается ли результат, когда исходные данные изменятся СПОСОБ КОГДА БРАТЬ ЖИВОЙ Мастер «Текст по столбцам»разовая задача, данные уже в файленетМгновенное заполнение, Ctrl+Eправила нет, но человеку оно очевиднонетФормулы ЛЕВСИМВ / ПСТР / ТЕКСТРАЗДсписок пополняется постояннодаPower Queryвыгрузка обновляется по одному сценариюда
Схема шире экрана — листается вбок пальцем →
Мастер и мгновенное заполнение дают статичный результат: строку поправили — разбивку надо делать заново. Формулы и Power Query живут вместе с данными.

Для разовой задачи берите мастер, он же «Текст по столбцам». Для регулярной выгрузки — Power Query или формулы. Дальше разберу каждый способ и две ловушки мастера, из-за которых чаще всего теряют данные.

Мастер «Текст по столбцам»

Выделите столбец с данными и откройте Данные → Текст по столбцам. Мастер состоит из трёх шагов, и вся суть в третьем.

Мастер «Текст по столбцам»: три шага Данные → Работа с данными → Текст по столбцам Шаг 1 · Формат данных«С разделителями» — если между значениями есть символ.«Фиксированной ширины» — если данные выровнены по позициям.Шаг 2 · РазделительГалочками: табуляция, точка с запятой, запятая, пробел или свой.Внизу в предпросмотре сразу видно, как ляжет разбивка.Шаг 3 · Формат столбцовТот самый шаг, который проматывают.Здесь артикулы и коды переводят в «Текстовый», иначе Excel их испортит. Первые два шага очевидны, третий проматывают кнопкой «Готово» — и получают испорченные данные.
Схема шире экрана — листается вбок пальцем →
Первые два шага понятны без пояснений: тип разбивки и разделитель. Третий обычно проматывают, и зря.

На втором шаге пригодится галочка «Считать последовательные разделители одним» — она нужна, когда данные выровнены пробелами и между значениями то один пробел, то восемь. Без неё каждый лишний пробел даст пустую колонку.

Ловушка первая: формат «Общий»

По умолчанию Excel сам решает, что за данные попали в столбец. Решает он агрессивно.

Что Excel портит на третьем шаге формат «Общий» означает «угадаю сам», и угадывает он не всегда в вашу пользу БЫЛО В СТРОКЕ СТАЛО ПРИ «ОБЩЕМ» ПРИ «ТЕКСТОВОМ» 007123712300712312.0512 мая12.051/201.фев1/2+7 999 123-45-67-1231+7 999 123-45-67 Лечение: на третьем шаге кликните по столбцу в области предпросмотра и выберите «Текстовый». Несколько столбцов выделяются с зажатым Shift. Отменить уже случившееся превращение нельзя.
Схема шире экрана — листается вбок пальцем →
Артикул теряет ведущие нули, «12.05» становится датой, дробь превращается в февраль, а телефон — в результат вычитания.

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

Ловушка вторая: затёртые соседние столбцы

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

Вторая ловушка: разбивка затирает то, что справа результат ложится в соседние столбцы и стирает то, что там было До разбивки A: Москва, диванB: 34900C: в наличии После «Готово» A: МоскваB: диванC: пусто Цена и остаток стёрты: две части легли в B и C. Два способа не потерять данные 1. Вставьте столько пустых столбцов справа, сколько получится частей минус один. 2. На третьем шаге в поле «Поместить в:» укажите ячейку в свободной области листа.
Схема шире экрана — листается вбок пальцем →
Excel показывает предупреждение «Заменить содержимое ячеек?», но выглядит оно как обычное подтверждение, и его жмут не глядя.

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

Ctrl+E: когда правила нет

Мгновенное заполнение появилось в Excel 2013 и решает задачи, которые мастеру не по зубам: достать из строки кусок по неочевидному правилу.

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

Где выигрывает. Инициалы из ФИО, домен из URL, цифры из артикула вида «АРТ-4471/син», первое слово из названия. Разделителя как такового нет, а правило человеку очевидно.
Где ломается. На неоднородных данных. Если в половине строк формат другой, Excel выведет правило по первым примерам и молча наделает мусора в остальных. Проверяйте результат в конце списка, а не только в начале.
Чего не умеет. Пересчитываться. Это разовое заполнение значениями: поправили исходную строку — результат остался прежним.

Если Ctrl+E не сработал, дайте два-три примера вместо одного: правило станет однозначнее. Помогает и включить подсказку заранее — Данные → Мгновенное заполнение.

Формулы, ТЕКСТРАЗД и Power Query

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

Классическая тройка работает в любой версии. Первая часть до запятой: =ЛЕВСИМВ(A2;НАЙТИ(",";A2)-1). Всё после последней запятой: =ПРАВСИМВ(A2;ДЛСТР(A2)-НАЙТИ("|";ПОДСТАВИТЬ(A2;",";"|";ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;",";""))))). Вторая формула выглядит устрашающе: в старых версиях Excel нет функции, которая разбивала бы строку целиком, и последнюю часть приходится вычислять через позицию последней запятой.

В Excel 365 появилась =ТЕКСТРАЗД(A2;", "): одна формула разом раскладывает строку по столбцам вправо и пересчитывается при изменении исходника. Если она доступна, остальные варианты можно не рассматривать.

В Google Таблицах то же самое делает =SPLIT(A2;",") — она есть с самого начала и тоже растекается вправо. Плюс в меню лежит готовый пункт Данные → Разделить текст на столбцы, аналог мастера.

Power Query нужен, когда разбивка — часть регулярного процесса: выгрузка приходит раз в месяц, и с ней каждый раз делают одно и то же. Импортируете файл, разбиваете столбец по разделителю в редакторе запросов, настраиваете типы — и при следующей выгрузке достаточно нажать «Обновить». Настройка займёт больше времени, чем разовая разбивка, и окупится со второго раза.

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

Когда разбивать быстрее онлайн

Отдельный случай — когда данных ещё нет в файле. Список пришёл в сообщении, в письме, скопирован из веб-интерфейса. Открывать ради него Excel и проходить мастер долго: быстрее разделить текст на столбцы онлайн. Инструмент разбивает по выбранному разделителю, показывает результат таблицей и отдаёт его с табуляцией между частями — при вставке в Excel такой текст сам ложится по ячейкам.

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

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

Частые вопросы

Как разделить текст по столбцам в Excel?
Выделите столбец, откройте Данные → Текст по столбцам, выберите «С разделителями», отметьте нужный разделитель и на третьем шаге задайте формат столбцов. Для артикулов, кодов и телефонов ставьте «Текстовый», иначе Excel испортит значения.
Почему после разбивки пропали ведущие нули у артикулов?
Потому что на третьем шаге мастера остался формат «Общий»: Excel решил, что 007123 — это число 7123. Вернуть исходное значение нельзя, данные перезаписаны. Повторите разбивку из исходного столбца, выбрав для этой колонки формат «Текстовый».
Почему после «Текст по столбцам» исчезли соседние столбцы?
Результат разбивки ложится вправо от исходного столбца поверх существующих данных. Excel предупреждает вопросом «Заменить содержимое ячеек?», но его обычно подтверждают не глядя. Вставляйте пустые столбцы заранее или указывайте в поле «Поместить в:» свободную ячейку.
Как разбить текст по столбцам без мастера?
Формулами: =ЛЕВСИМВ(A2;НАЙТИ(",";A2)-1) для первой части и связка с ПСТР для остальных. В Excel 365 проще — =ТЕКСТРАЗД(A2;", ") раскладывает строку целиком. Такой результат пересчитывается при изменении исходных данных, в отличие от мастера.
Что такое мгновенное заполнение и как им пользоваться?
Это Ctrl+E. Вы вручную вводите желаемый результат для первой строки в соседнем столбце, встаёте на ячейку ниже и нажимаете Ctrl+E — Excel выводит правило по вашему примеру и заполняет столбец. Помогает, когда явного разделителя нет: достать домен из URL или инициалы из ФИО.
Как разделить текст на столбцы в Google Таблицах?
Формулой =SPLIT(A2;",") — она сама растекается по столбцам вправо и пересчитывается. Либо через меню: Данные → Разделить текст на столбцы, это аналог мастера Excel.
Как разбить данные, если разделителя нет вообще?
На первом шаге мастера выберите «Фиксированной ширины» и расставьте границы столбцов мышью в области предпросмотра. Так разбирают выгрузки из старых учётных систем и логи, где значения выровнены по позициям.
Как разделить текст по столбцам онлайн?
Вставьте строки в инструмент разбивки на столбцы и выберите разделитель. Он учитывает кавычки, поэтому запятая внутри адреса не разваливает строку, и отдаёт результат с табуляцией — такой текст вставляется в Excel готовыми ячейками, а артикулы при этом остаются текстом.

Главное

Если коротко

Выбор способа сводится к одному вопросу: нужен ли живой результат. Разовая задача — мастер «Текст по столбцам», нестандартное правило без разделителя — Ctrl+E, регулярная выгрузка — Power Query, пополняемый список — формулы или ТЕКСТРАЗД. И две вещи, которые стоит помнить про мастер. Третий шаг задаёт формат столбцов и спасает артикулы, коды и даты от автоматического превращения. Результат ложится поверх соседних столбцов и стирает то, что там было.

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

Больше разборов в Telegram — «Digital-трафик»

Читать дальше

Все статьи
Ссылка скопирована