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

Работа с числами в Microsoft Excel часто требует не только базовых вычислений, но и их трансформации — например, разделения на составные части. Возможно, вам нужно выделить целую и дробную часть из десятичного числа, разложить многозначное значение по разрядам (единицы, десятки, сотни) или просто разбить длинное число на отдельные цифры для дальнейшего анализа. В этой статье мы разберём 5 проверенных способов, как это сделать с помощью формул — от простых функций до продвинутых техник.

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

Если вы новичок, начните с раздела про функции ЦЕЛОЕ и ОСТАТ — они покрывают 80% задач по разделению чисел. Для опытных пользователей приготовили продвинутые приёмы с массивами и текстовыми функциями, которые экономят время при обработке больших данных.

1. Разделение числа на целую и дробную часть

Самая распространённая задача — отделить целую часть числа от дробной. Например, у вас есть цена товара 125.99, и нужно вывести 125 (рубли) в одну ячейку, а 99 (копейки) — в другую. Для этого в Excel есть две специализированные функции:

  • 🔹 =ЦЕЛОЕ(число) — возвращает целую часть числа (округляет вниз до ближайшего целого). Пример: =ЦЕЛОЕ(125.99) вернёт 125.
  • 🔹 =ОСТАТ(число; 1) — возвращает дробную часть, если вторым аргументом указать 1. Пример: =ОСТАТ(125.99; 1) вернёт 0.99.

Чтобы получить копейки в виде целого числа (например, 99, а не 0.99), умножьте результат на 100 и примените функцию =ОКРУГЛ:

=ОКРУГЛ(ОСТАТ(125.99; 1) * 100; 0)

Этот метод работает и с отрицательными числами. Например, для -125.99 функция ЦЕЛОЕ вернёт -126 (округление вниз), а ОСТАТ0.01 (поскольку -125.99 = -126 + 0.01).

⚠️ Внимание: Если вы используете =ОКРУГЛВНИЗ вместо ЦЕЛОЕ, результат для отрицательных чисел будет другим. Например, =ОКРУГЛВНИЗ(-125.99; 0) вернёт -125, а не -126.
📊 Как часто вы работаете с дробными числами в Excel?
Ежедневно
Несколько раз в неделю
Редко
Никогда

2. Разделение многозначного числа по разрядам (единицы, десятки, сотни)

Допустим, у вас есть число 4729, и нужно разложить его на составляющие: 9 (единицы), 2 (десятки), 7 (сотни) и 4 (тысячи). Для этого используйте комбинацию функций =ОСТАТ и =ЦЕЛОЕ с делением на 10 в нужной степени:

Разряд Формула Пример для числа 4729
Единицы =ОСТАТ(число; 10) =ОСТАТ(4729; 10)9
Десятки =ОСТАТ(ЦЕЛОЕ(число/10); 10) =ОСТАТ(ЦЕЛОЕ(4729/10); 10)2
Сотни =ОСТАТ(ЦЕЛОЕ(число/100); 10) =ОСТАТ(ЦЕЛОЕ(4729/100); 10)7
Тысячи =ОСТАТ(ЦЕЛОЕ(число/1000); 10) =ОСТАТ(ЦЕЛОЕ(4729/1000); 10)4

Если число содержит больше разрядов (например, 123456), продолжите делить на 10 000, 100 000 и т. д. Главное правило: степень числа 10 должна соответствовать позиции разряда (для десятков — 10^1, для сотен — 10^2).

Убедитесь, что число целое (нет дробной части)|

Проверьте правильность степени 10 для каждого разряда|

Используйте ЦЕЛОЕ перед делением, чтобы избежать ошибок округления|

Тестируйте формулы на крайних значениях (например, 0 или 9999)-->

Критическая ошибка: Если вы забудете применить ЦЕЛОЕ перед делением, Excel округлит результат по правилам арифметики, и формула вернёт неверное значение. Например, =ОСТАТ(4729/100; 10) даст 7.29, а не 7.

3. Разделение числа на отдельные цифры (посимвольно)

Иногда требуется разбить число на отдельные цифры, каждая из которых будет в своей ячейке. Например, из 5678 получить 5, 6, 7, 8. Для этого можно использовать текстовые функции, поскольку число в Excel легко преобразовать в строку:

  • 🔹 =ПСТР(ТЕКСТ(число); 1; 1) — извлекает первую цифру.
  • 🔹 =ПСТР(ТЕКСТ(число); 2; 1) — вторую цифру, и так далее.

Функция ТЕКСТ преобразует число в строку, а ПСТР (или MID в английской версии) извлекает символ по заданной позиции. Пример для числа 5678:

=ПСТР(ТЕКСТ(5678); 1; 1) → "5"

=ПСТР(ТЕКСТ(5678); 2; 1) → "6"

Чтобы вернуть цифры как числа (а не текст), оберните формулу в =ЗНАЧЕН:

=ЗНАЧЕН(ПСТР(ТЕКСТ(5678); 3; 1)) → 7
⚠️ Внимание: Если число содержит ведущие нули (например, 00123), Excel автоматически их обрежет при преобразовании в числовой формат. Чтобы сохранить нули, храните такие данные как текст или используйте формат ячейки Текстовый.
=ТЕКСТСЦЕПИТЬ("-"; ИСТИНА; ПСТР(ТЕКСТ(5678); СТРОКА(ДВССЫЛ("1:4")); 1))

(введите как формулу массива, нажав Ctrl+Shift+Enter в старых версиях Excel).-->

4. Разделение числа на группы по количеству символов

Представьте, что у вас есть длинный числовой код (например, 1234567890), и нужно разбить его на части по 3 символа: 123, 456, 789, 0. Здесь поможет комбинация функций ПСТР, ДЛСТР и арифметических операций.

Общая формула для извлечения группы из n символов, начиная с позиции k:

=ПСТР(ТЕКСТ(число); k; n)

Для автоматического разделения на группы по 3 символа используйте следующий подход:

=ПСТР(ТЕКСТ(1234567890); (СТОЛБЕЦ(A1)-1)*3+1; 3)

Протяните эту формулу вправо — она будет последовательно возвращать 123, 456, 789, 0 (для последней группы может понадобиться корректировка длины).

Если длина числа не кратна 3, добавьте проверку на остаток:

=ЕСЛИ((ДЛСТР(ТЕКСТ(1234567890))-(СТОЛБЕЦ(A1)-1)*3)>0;

ПСТР(ТЕКСТ(1234567890); (СТОЛБЕЦ(A1)-1)*3+1;

ЕСЛИ((ДЛСТР(ТЕКСТ(1234567890))-(СТОЛБЕЦ(A1)-1)*3)>3; 3; ДЛСТР(ТЕКСТ(1234567890))-(СТОЛБЕЦ(A1)-1)*3));

"")

Как разделить число на группы переменной длины?

Если группы имеют разную длину (например, 2-3-2 символа), используйте вложенные ПСТР с фиксированными позициями:

=ПСТР(ТЕКСТ(12345678); 1; 2) → "12" =ПСТР(ТЕКСТ(12345678); 3; 3) → "345" =ПСТР(ТЕКСТ(12345678); 6; 2) → "67"

5. Продвинутые методы: формулы массива и Power Query

Для опытных пользователей, работающих с большими наборами данных, ручное разделение чисел может быть неэффективным. В таких случаях поможет Power Query (вкладка Данные → Получить данные) или формулы массива.

Способ 1: Power Query

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

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

Чтобы разложить число 1234 на цифры в строку через запятую, используйте:

=ТЕКСТСЦЕПИТЬ(";"; ИСТИНА; --ПСТР(ТЕКСТ(1234); СТРОКА(ДВССЫЛ("1:" & ДЛСТР(ТЕКСТ(1234)))); 1))

В английской версии Excel замените ТЕКСТСЦЕПИТЬ на TEXTJOIN, а ДВССЫЛ — на INDIRECT.

Способ 3: VBA-макрос для автоматического разделения

Если вам часто приходится делить числа, создайте простой макрос:

Sub SplitNumber()

Dim rng As Range, cell As Range

Set rng = Selection

For Each cell In rng

If IsNumeric(cell.Value) Then

cell.Offset(0, 1).Resize(1, Len(cell.Value)) = Application.Transpose(Mid(cell.Value, Row(1:100), 1))

End If

Next cell

End Sub

Этот макрос разложит выделенные числа посимвольно в ячейки справа.

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

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

  • 🚫 Игнорирование формата ячейки: Если ячейка отформатирована как текст, функции ЦЕЛОЕ или ОСТАТ могут не сработать. Всегда проверяйте формат через Главная → Формат → Формат ячеек.
  • 🚫 Деление без ЦЕЛОЕ: Забыв применить ЦЕЛОЕ перед делением (например, =4729/100 вместо =ЦЕЛОЕ(4729/100)), вы получите дробное число, а не сотни.
  • 🚫 Ошибки с отрицательными числами: Функция ОСТАТ ведёт себя иначе с отрицательными значениями. Например, =ОСТАТ(-10; 3) вернёт 2, а не -1.
  • 🚫 Неучёт ведущих нулей: При преобразовании текста в число (=ЗНАЧЕН("00123")) ведущие нули теряются. Используйте текстовый формат, если нули важны.

Чтобы минимизировать ошибки, тестируйте формулы на крайних значениях:

  • 🔢 Ноль (0).
  • 🔢 Отрицательные числа (-123.45).
  • 🔢 Числа с ведущими нулями (00123).
  • 🔢 Очень большие числа (например, 1.23E+15).

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

Как разделить число на разряды, если оно хранится как текст?

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

Можно ли разделить число на части без формул?

Да, с помощью инструмента Текст по столбцам (Данные → Текст по столбцам). Выберите Фиксированная ширина или Разделители (если число содержит символы-разделители, например, дефис). Однако этот метод не подходит для автоматического обновления данных.

Как разделить число на сотни, если оно дробное (например, 1234.56)?

Сначала отделите целую часть с помощью =ЦЕЛОЕ(1234.56), а затем примените формулы для разрядов (см. раздел 2). Дробную часть (0.56) можно обработать отдельно, умножив на 100 и округлив.

Почему функция ОСТАТ возвращает неверный результат для отрицательных чисел?

Функция ОСТАТ следует математическому правилу: остаток имеет тот же знак, что и делитель. Например, =ОСТАТ(-10; 3) возвращает 2, потому что -10 = 3*(-4) + 2. Чтобы получить остаток со знаком делимого, используйте формулу: =делимое - делитель*ЦЕЛОЕ(делимое/делитель).

Как автоматически разделить числа в столбце на группы по 4 цифры (например, для банковских карт)?

Используйте формулу массива с ПСТР и СТОЛБЕЦ:

=ЕСЛИОШИБКА(ПСТР($A1; (СТОЛБЕЦ(A1)-1)*4+1; 4); "")

Протяните её вправо на 4 столбца. Для числа 1234567812345678 получите группы 1234 5678 1234 5678.