Как разделить числа в Excel по столбцам: от простых способов до автоматизации

Если в ячейке Excel хранится число с разделителями (точки, запятые, пробелы или дефисы), а вам нужно разбить его на отдельные столбцы — например, 123-45-6789 превратить в три колонки 123, 45 и 6789 — стандартный инструмент Текст по столбцам не всегда срабатывает корректно. Проблема в том, что Excel по умолчанию воспринимает такие данные как текст или дату, а не как набор числовых сегментов. В 80% случаев пользователи сталкиваются с тем, что после разделения числа превращаются в даты (например, 01.05 становится 1 мая) или теряют ведущие нули (например, 00123 становится 123).

В этой статье разберём 7 способов разделения чисел по столбцам — от базовых (с помощью встроенных функций) до продвинутых (через Power Query и VBA), а также покажем, как избежать типичных ошибок при работе с разными форматами: телефонными номерами, идентификаторами, денежными суммами с валютами и научной нотацией. Особое внимание уделим случаям, когда стандартный мастер разделения отказывается работать — например, при неравномерных разделителях (123..456...789) или когда числа записаны в экспоненциальном формате (1.23E+05).

1. Разделение чисел с помощью мастера «Текст по столбцам»

Самый быстрый способ — использовать встроенный инструмент Данные → Текст по столбцам. Он подходит для чисел с фиксированными разделителями (запятая, точка с запятой, пробел, тире) или фиксированной шириной (например, первые 3 символа — код, следующие 2 — серия). Однако у метода есть критические ограничения:

  • 🔢 Не сохраняет ведущие нули (например, 007 станет 7).
  • 📅 Преобразует двузначные числа в даты (например, 03/043 апреля).
  • ❌ Не работает с нестандартными разделителями (например, 123***456).

Чтобы избежать ошибок, следуйте алгоритму:

  1. Выделите столбец с числами.
  2. Перейдите на вкладку ДанныеТекст по столбцам.
  3. Выберите С разделителями (если разделитель явный) или Фиксированная ширина (если числа разбиты по позициям).
  4. На шаге с разделителями снимите все галочки, кроме нужного символа (например, только Табуляция или Пробел).
  5. Нажмите Готово и не забудьте изменить формат ячеек на «Текстовый» для результирующих столбцов.
⚠️ Внимание: Если после разделения числа отображаются как ########, расширьте ширину столбца или измените формат на Общий. Это означает, что Excel не может корректно отобразить данные из-за нехватки места.

1. Проверьте, что в столбце нет объединённых ячеек

2. Убедитесь, что разделитель одинаковый во всех строках

3. Преобразуйте столбец в текстовый формат (CTRL+1 → Текстовый)

4. Создайте резервную копию данных (на случай ошибок)

-->

2. Разделение чисел с ведущими нулями

Если в числе есть ведущие нули (например, 00198765432), стандартный мастер Текст по столбцам их обрежет. Чтобы сохранить нули, используйте один из двух методов:

Способ 1: Предварительное форматирование как текст

Перед разделением:

  1. Выделите столбец с числами.
  2. Нажмите CTRL+1, выберите формат Текстовый.
  3. Добавьте перед каждым числом апостроф (') вручную или через функцию =ТЕКСТ(A1;"@").
  4. Запустите мастер Текст по столбцам.

Способ 2: Формулы с функцией ТЕКСТ

Если числа разделены фиксированным символом (например, -), используйте комбинацию функций:

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

=ТЕКСТ(ПСТР(A1;НАЙТИ("-";A1)+1;5);"00000")

Где "00000000" — маска для сохранения ведущих нулей (количество нулей = максимальная длина числа).

Исходное числоРазделительФормула для первой частиФормула для второй части
004-5678-=ТЕКСТ(ЛЕВСИМВ(A1;2);"00")=ПСТР(A1;4;4)
000123.456.=ТЕКСТ(ЛЕВСИМВ(A1;6);"000000")=ПСТР(A1;8;3)
01 23 4567пробел=ТЕКСТ(ЛЕВСИМВ(A1;2);"00")=ПСТР(A1;4;2)

3. Разделение чисел с нестандартными разделителями

Если числа разделены редкими символами (например, 123***456, 123→456 или 123[456]), мастер Текст по столбцам их не распознаёт. В таких случаях используйте функции ПСТР + НАЙТИ:

=ЛЕВСИМВ(A1;НАЙТИ("***";A1)-1)  // Первая часть

=ПСТР(A1;НАЙТИ("***";A1)+3;99) // Вторая часть

Для разделителей из нескольких символов (например, или [ ]) модифицируйте формулу:

=ПСТР(A1;НАЙТИ("→";A1)+2;99)  // Пропускаем 2 символа (→)
⚠️ Внимание: Если разделитель встречается в числе несколько раз (например, 123-456-789), используйте НАЙТИ с третьим аргументом для указания позиции поиска:
=ПСТР(A1;НАЙТИ("-";A1;НАЙТИ("-";A1)+1)+1;99)

4. Разделение чисел с плавающей запятой или валютами

Числа с десятичными разделителями (например, 123,45 или 1 000.50 $) требуют особого подхода, так как Excel может воспринимать их как даты или финансовые форматы. Рассмотрим два сценария:

Сценарий 1: Разделение целой и дробной части

Используйте функции ЦЕЛОЕ и ОСТАТ:

=ЦЕЛОЕ(A1)  // Целая часть

=ОСТАТ(A1;1) // Дробная часть (например, 0,45)

Чтобы убрать ноль перед запятой в дробной части, примените:

=ЕСЛИ(ОСТАТ(A1;1)=0;"";ПСТР(ТЕКСТ(ОСТАТ(A1;1);"0.00");3;2))

Сценарий 2: Разделение суммы и валюты

Если число записано с валютой (например, 1000.50 USD), используйте:

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

=ПСТР(A1;НАЙТИ(" ";A1)+1;3) // Валюта (USD)

Числа с тире (123-456)|Числа с пробелами (123 456)|Денежные суммы (1000.50 $)|Научная нотация (1.23E+05)|Другой вариант-->

5. Разделение чисел в научной нотации (1.23E+05)

Числа в экспоненциальном формате (например, 1.23E+05 = 123000) не разделятся стандартным мастером. Чтобы преобразовать их в обычный вид и затем разбить:

  1. Создайте вспомогательный столбец с формулой:
    =ЗНАЧЕН(A1)

    Это преобразует 1.23E+05 в 123000.

  2. Скопируйте результаты как значения (CTRL+C → ПКМ → Значения).
  3. Примените Текст по столбцам с разделителем Фиксированная ширина, если нужно разбить по разрядам.

Если требуется разделить мантиссу и порядок (например, выделить 1.23 и 5 из 1.23E+05), используйте:

=ЛЕВСИМВ(A1;НАЙТИ("E";A1)-1)  // Мантисса (1.23)

=ПСТР(A1;НАЙТИ("E";A1)+2;2) // Порядок (05)

6. Автоматизация разделения с помощью Power Query

Для больших массивов данных (тысячи строк) удобнее использовать Power Query:

  1. Выделите данные → Данные → Из таблицы/диапазона.
  2. В редакторе Power Query выберите столбец → Преобразовать → Разделить столбец → По разделителю.
  3. Укажите разделитель (например, - или пробел) и нажмите ОК.
  4. Нажмите Закрыть и загрузить.

Преимущества метода:

  • 🔄 Сохраняет ведущие нули автоматически.
  • 📊 Работает с неравномерными разделителями (например, 123..456).
  • 🔄 Позволяет обновить данные одним кликом при изменении исходника.
Как разделить числа с несколькими разными разделителями?

Используйте Power Query с заменой символов:

1. Замените все разделители на один общий (например, замените ., , и - на |).

2. Разделите столбец по символу |.

3. При необходимости переименуйте новые столбцы.

7. Разделение чисел с помощью VBA (для продвинутых пользователей)

Если нужно разделить числа по сложному шаблону (например, АБ123ВГ456, где буквы и цифры чередуются), напишите макрос:

Sub SplitNumbers()

Dim rng As Range, cell As Range

Dim parts() As String

Set rng = Selection

For Each cell In rng

If IsNumeric(Replace(cell.Value, "-", "")) Then

parts = Split(cell.Value, "-")

cell.Offset(0, 1).Value = parts(0)

cell.Offset(0, 2).Value = parts(1)

End If

Next cell

End Sub

Чтобы использовать макрос:

  1. Нажмите ALT+F11, чтобы открыть редактор VBA.
  2. Вставьте код в новый модуль (Insert → Module).
  3. Выделите столбец с данными и запустите макрос (F5).
⚠️ Внимание: Перед запуском макроса сохраните файл в формате .xlsm (с поддержкой макросов) и проверьте на тестовых данных.

Частые ошибки и как их избежать

Даже при правильном разделении пользователи сталкиваются с типичными проблемами:

ОшибкаПричинаРешение
Числа превращаются в даты (03/043 апреля)Excel автоматически преобразует форматПеред разделением отформатируйте столбец как Текстовый
Пропадают ведущие нулиСтандартный формат ячейки обрезает нулиИспользуйте формулу =ТЕКСТ(значение;"00000")
Появляются символы # вместо чиселНедостаточная ширина столбцаРасширьте столбец или измените формат на Общий
Мaster Текст по столбцам не распознаёт разделительСимвол нестандартный (например, )Используйте функции ПСТР/НАЙТИ или Power Query

Критичный нюанс: Если после разделения числа отображаются как ########, это не ошибка — просто расширьте столбец. Если же появляется сообщение #ЗНАЧ!, проверьте, что в исходных данных нет пустых ячеек или объединённых областей.

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

Как разделить номер телефона +7 (123) 456-78-90 по частям?

Используйте комбинацию функций:

=ПСТР(A1;3;3)  // Код города (123)

=ПСТР(A1;8;3) // Первые 3 цифры номера (456)

=ПСТР(A1;12;2) // Последние 2 цифры (90)

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

=ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;"(";"");")";"");" ";"")
Почему после разделения числа с точкой (1.234) мастер создаёт 3 столбца вместо 2?

Excel воспринимает точку как разделитель тысячных и десятичных. Чтобы разделить только по десятичной точке:

  1. Замените точки на запятые (=ПОДСТАВИТЬ(A1;". ";",")).
  2. Используйте мастер Текст по столбцам с разделителем Запятая.
Как разделить число на разряды (например, 123456 → 12 34 56)?

Используйте формулы с фиксированной шириной:

=ЛЕВСИМВ(A1;2)   // Первые 2 цифры (12)

=ПСТР(A1;3;2) // Следующие 2 цифры (34)

=ПСТР(A1;5;2) // Последние 2 цифры (56)

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

=ЛЕВСИМВ(A1;2)&" "&ПСТР(A1;3;2)&" "&ПСТР(A1;5;2)
Можно ли разделить числа в Google Sheets так же, как в Excel?

Да, в Google Sheets есть аналогичный инструмент:

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

Отличия от Excel:

  • В Google Sheets ведущие нули сохраняются автоматически.
  • Нет функции Power Query, но можно использовать APP SCRIPT для сложных задач.
Как разделить числа в столбце, если разделитель — это несколько подряд идущих символов (например, 123...456)?

Используйте комбинацию ПСТР и НАЙТИ с учётом длины разделителя:

=ЛЕВСИМВ(A1;НАЙТИ("...";A1)-1)       // Первая часть (123)

=ПСТР(A1;НАЙТИ("...";A1)+3;ДЛСТР(A1)) // Вторая часть (456)

Для разделителей переменной длины (например, 123....456) сначала нормализуйте данные:

=ПОДСТАВИТЬ(A1;"....";"|")  // Замените 4 точки на один символ