Разделение столбца на два в Excel: полное руководство с примерами

Почему разделение столбцов в Excel — частая задача

Работа с данными в Microsoft Excel часто требует преобразования исходных таблиц в более удобный формат. Одна из самых распространённых проблем — когда полезная информация «склеена» в одной ячейке. Например, в столбце могут храниться ФИО через пробел, адреса с индексом или даты с временем. Разделение такого столбца на два (или больше) позволяет:

✅ Упростить сортировку и фильтрацию данных (например, отсортировать сотрудников по фамилии, а не по полному имени).

✅ Использовать отдельные части данных в формулах (например, извлечь только год из ячейки с полной датой).

✅ Подготовить данные для сводных таблиц или внешних систем (1С, CRM), где требуется строгая структура.

В этой статье мы разберём 5 способов разделения столбцов — от простейших до продвинутых, — а также типичные ошибки и нюансы для разных версий Excel (включая Excel 365 и Excel 2019). Если вы работаете с большими массивами данных, обратите внимание на раздел про Power Query — он сэкономит часы ручной работы.

📊 Как часто вам приходится разделять столбцы в Excel?
Ежедневно
Раз в неделю
Редко, но методично
Никогда не делал этого

Способ 1: Разделение по символу-разделителю (самый быстрый метод)

Если данные в ячейках имеют фиксированный разделитель (запятая, точка с запятой, пробел, тире и т.д.), воспользуйтесь встроенной функцией Текст по столбцам. Этот метод работает во всех версиях Excel и подходит для 90% задач.

Примеры данных, которые можно разделить таким способом:

  • 📌 ФИО: Иванов Иван Петрович → разделитель пробел.
  • 📌 Адреса: 123456, Москва, ул. Ленина, 10 → разделитель запятая.
  • 📌 Телефоны: 8-912-345-67-89 → разделитель тире.

Пошаговая инструкция:

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

☑️ Подготовка к разделению по символу

Выполнено: 0 / 4

Ограничения метода:

  • ❌ Не работает, если разделитель непостоянный (например, в одной ячейке пробел, в другой — запятая).
  • ❌ Не подходит для фиксированной ширины (например, разделить первые 3 символа от остальных).
Что делать, если разделитель — несколько символов подряд?

Если разделитель состоит из нескольких символов (например, "; " или " - "), сначала замените его на один символ через Ctrl+H (замена), а затем используйте Текст по столбцам. Например, замените " - " на |, а затем разделите по |.

Способ 2: Разделение по фиксированной ширине (для структурированных данных)

Этот метод полезен, когда данные имеют строгую структуру по символам. Например:

  • 📌 Артикулы: ABC123-45678 → нужно разделить на ABC123 и 45678.
  • 📌 Номера документов: 7701123456 → первые 4 цифры (код региона), остальные — номер.
  • 📌 Дата+время: 20260515143020260515 и 1430.

Как разделить:

  1. Выделите столбец с данными.
  2. Перейдите в ДанныеТекст по столбцам.
  3. Выберите Фиксированная ширинаДалее.
  4. В окне предварительного просмотра кликните мышью в том месте, где нужно разделить данные (появится вертикальная линия). Добавьте столько линий, сколько частей нужно получить.
  5. Нажмите Готово.

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

Исходные данные Разделитель Результат (Столбец 1) Результат (Столбец 2)
ABC123-45678 6 символов ABC123 45678
7701123456 4 символа 7701 123456
ИВАНОВИВАН01011990 8 и 10 символов ИВАНОВИВ АН01011990

Способ 3: Формулы для гибкого разделения (LEN, LEFT, RIGHT, MID, FIND)

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

1. Разделение по первому пробелу (извлечение фамилии из ФИО)

Формула для извлечения текста до первого пробела:

=ЛЕВСИМВ(A1;НАЙТИ(" ";A1;1)-1)

Формула для извлечения текста после первого пробела:

=ПРАВСИМВ(A1;ДЛСТР(A1)-НАЙТИ(" ";A1;1))

2. Разделение по последнему пробелу (извлечение имени и отчества)

Формула для извлечения текста после последнего пробела:

=ПРАВСИМВ(A1;ДЛСТР(A1)-ПОИСК(" ";A1;ПОИСК(" ";A1;ПОИСК(" ";A1)+1)+1))

Для извлечения промежуточной части (например, имени из ФИО) используйте СЖПРОБЕЛЫ + ПСТР:

=СЖПРОБЕЛЫ(ПСТР(СЖПРОБЕЛЫ(A1);НАЙТИ(" ";A1)+1;НАЙТИ(" ";A1;НАЙТИ(" ";A1)+1)-НАЙТИ(" ";A1)-1))

3. Разделение по любому символу (универсальный метод)

Если разделитель — не пробел, а например "/" или "-", замените " " в формулах на нужный символ. Например, для разделения Иванов/Иван/Иванович:

=ЛЕВСИМВ(A1;НАЙТИ("/";A1;1)-1)  

=ПСТР(A1;НАЙТИ("/";A1;1)+1;НАЙТИ("/";A1;НАЙТИ("/";A1;1)+1)-НАЙТИ("/";A1;1)-1)

Способ 4: Power Query — автоматическое разделение для больших таблиц

Если вам нужно разделить тысячи строк или делать это регулярно, Power Query (доступен в Excel 2016+ и Excel 365) станет вашим спасением. Этот инструмент позволяет:

  • 🔄 Автоматизировать процесс (однажды настроив, можно обновлять данные одним кликом).
  • 📊 Обрабатывать данные из нескольких источников (например, объединить и разделить столбцы из разных файлов).
  • 🔍 Исправлять ошибки на лету (например, убирать лишние пробелы или заменять разделители).

Пошаговая инструкция:

  1. Выделите таблицу с данными (или перейдите на вкладку ДанныеИз таблицы/диапазона).
  2. В открывшемся окне Power Query выделите столбец, который нужно разделить.
  3. На вкладке Преобразование выберите:
    • 🔹 Разделить столбец → По разделителю (если разделитель известен).
    • 🔹 Разделить столбец → По количеству символов (если нужна фиксированная ширина).
  • Настройте параметры (например, укажите разделитель или количество символов).
  • Нажмите Закрыть и загрузить — данные обновятся в новом листе.
  • Преимущества Power Query:

    • Независимость от формул — данные обновляются автоматически при изменении источника.
    • Поддержка сложных правил (например, разделение по нескольким разделителям или с учётом регистра).
    • Возможность отката — все шаги фиксируются, их можно редактировать.

    Способ 5: Макросы VBA для продвинутых пользователей

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

    Пример макроса для разделения столбца A по первому пробелу:

    Sub SplitColumnBySpace()
    

    Dim rng As Range

    Dim cell As Range

    Dim lastRow As Long

    Dim splitData() As String

    ' Определяем последний заполненный ряд в столбце A

    lastRow = Cells(Rows.Count, "A").End(xlUp).Row

    Set rng = Range("A1:A" & lastRow)

    ' Добавляем два новых столбца справа

    rng.Offset(0, 1).Resize(, 2).Insert Shift:=xlToRight

    ' Разделяем данные

    For Each cell In rng

    If cell.Value <> "" Then

    splitData = Split(cell.Value, " ")

    cell.Offset(0, 1).Value = splitData(0) ' Первая часть

    If UBound(splitData) > 0 Then

    cell.Offset(0, 2).Value = Mid(cell.Value, Len(splitData(0)) + 2) ' Остаток

    End If

    End If

    Next cell

    End Sub

    Как использовать макрос:

    1. Нажмите Alt+F11, чтобы открыть редактор VBA.
    2. Вставьте код в новый модуль (Insert → Module).
    3. Закройте редактор и запустите макрос через Alt+F8 (выберите SplitColumnBySpaceВыполнить).
    ⚠️ Внимание: Перед запуском макроса сохраните файл в формате .xlsm (с поддержкой макросов), иначе код не сработает. Также отключите защиту от макросов в настройках Excel (Файл → Параметры → Центр управления безопасностью → Параметры центра управления безопасностью → Настройки макросов → Включить все макросы).

    Типичные ошибки и как их избежать

    Даже опытные пользователи Excel сталкиваются с проблемами при разделении столбцов. Вот самые распространённые ошибки и способы их решения:

    Ошибка Причина Решение
    Данные не разделяются Неверно указан разделитель или формат ячеек Текст. Проверьте разделитель вручную (например, может быть невидимый символ CHAR(160) — неразрывный пробел). Используйте =КОДСИМВ(СИМВОЛ(1;A1)) для проверки.
    Лишние пустые столбцы Включена опция Подряд идущие разделители считать за один. Снимите галочку в мастере Текст по столбцам.
    Дата превращается в число Excel автоматически преобразует даты в формат ДД.ММ.ГГГГ. Перед разделением установите формат ячеек как Текст (Ctrl+1 → Текстовый).
    Формулы возвращают #ЗНАЧ! В данных нет разделителя (например, пробела). Добавьте проверку на ошибки: =ЕСЛИОШИБКА(ЛЕВСИМВ(A1;НАЙТИ(" ";A1)-1);A1).
    ⚠️ Внимание: Если вы разделяете столбец с объединёнными ячейками, сначала отмените объединение (Главная → Объединить и центрировать). В противном случае данные в объединённых ячейках будут утрачены!

    FAQ: Ответы на частые вопросы

    Можно ли разделить столбец на два без потери исходных данных?

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

    • 📌 Сначала скопировать столбец на новый лист (Ctrl+C → Ctrl+Alt+V → Значения).
    • 📌 Использовать формулы — они не изменяют исходные ячейки.
    • 📌 В Power Query данные обрабатываются в отдельном буфере.
    Как разделить ячейку на две, если разделитель — запятая, но в тексте тоже есть запятые?

    Используйте формулы с учётом контекста. Например, если адрес имеет вид город, улица, дом, а в названии улицы тоже есть запятая (Москва, улица Ленина, дом 1, корпус 2), примените:

    =ЛЕВСИМВ(A1;НАЙТИ(", ";A1;НАЙТИ(", ";A1)+1)-1)  
    

    =ПРАВСИМВ(A1;ДЛСТР(A1)-НАЙТИ(", ";A1;НАЙТИ(", ";A1)+1))

    Или замените «внутренние» запятые на другой символ перед разделением.

    Почему после разделения столбца числа отображаются как даты?

    Excel автоматически преобразует числа в формат даты, если они похожи на дату (например, 01.05.2026 или 1/5/2026). Чтобы избежать этого:

    1. Перед разделением установите формат ячеек как Текст.
    2. Используйте ' перед числом (например, '01.05.2026), чтобы принудительно сделать его текстом.
    3. В Power Query явно укажите тип данных Текст для результирующих столбцов.
    Как разделить столбец в Google Sheets?

    В Google Таблицах процесс аналогичен Excel:

    1. Выделите столбец.
    2. Перейдите в Данные → Разделить текст на столбцы.
    3. Выберите разделитель или укажите фиксированную ширину.

    Отличия от Excel:

    • 📌 Нет Power Query, но есть =SPLIT() для формул.
    • 📌 Макросы пишутся на Google Apps Script (аналог VBA).
    Можно ли разделить столбец по регулярному выражению?

    В стандартном Excel — нет. Но есть обходные пути:

    • 📌 В Power Query используйте Text.Select или Text.BeforeDelimiter с кастомными функциями.
    • 📌 В Excel 365 с функцией =ТЕКСТРАЗД() (англ. TEXTSPLIT) можно указать массив разделителей.
    • 📌 Для сложных регулярных выражений используйте VBA с библиотекой VBScript.RegExp.

    Пример кода для VBA:

    Function SplitByRegex(inputText As String, pattern As String) As String()
    

    Dim regex As Object

    Set regex = CreateObject("VBScript.RegExp")

    regex.pattern = pattern

    SplitByRegex = regex.Split(inputText)

    End Function