Как в Excel округлить число до меньшего значения: 5 рабочих способов

Почему округление вниз — это не всегда простое отбрасывание цифр

На первый взгляд, округление числа до меньшего целого кажется тривиальной задачей: взял и отбросил дробную часть. Но в Microsoft Excel даже такая простая операция имеет нюансы. Например, функция ОКРУГЛ здесь не подойдёт — она округлит 1.99 до 2, а не до 1, как требуется. А если речь идёт об отрицательных числах, то классическое "отбрасывание" может дать неожиданный результат: -1.99 после округления вниз должен стать -2, а не -1.

В этой статье разберём 5 способов округления до меньшего значения — от базовых функций до продвинутых приёмов для работы с массивами данных. Вы узнаете, когда использовать ЦЕЛОЕ, а когда — ОТБР, как обрабатывать отрицательные числа и почему иногда лучше писать свою формулу вместо готовых функций. Особое внимание уделим типичным ошибкам, которые делают даже опытные пользователи.

Способ 1: Функция ОТБР — простое отбрасывание дробной части

Функция ОТБР (или TRUNC в английской версии) — самый прямолинейный инструмент для округления вниз. Она не округляет в классическом смысле, а просто обрезает дробную часть до указанного количества знаков. Синтаксис:

=ОТБР(число; [количество_знаков])

Где:

  • 🔢 число — значение, которое нужно округлить (например, A1 или 3.789).
  • 📏 [количество_знаков] — сколько знаков после запятой оставить (по умолчанию 0, то есть до целого).

Примеры:

ФормулаРезультатПояснение
=ОТБР(5.99)5Отброшена дробная часть
=ОТБР(-2.3)-2Отрицательное число округлено к нулю
=ОТБР(12.456; 2)12.45Оставлено 2 знака после запятой
=ОТБР(7.1; -1)7Округление до десятков (но 7.1 < 10, поэтому без изменений)
⚠️ Внимание: ОТБР работает по принципу "к нулю", а не "вниз". Для отрицательных чисел это критично: =ОТБР(-3.7) вернёт -3, хотя математически округление вниз должно дать -4.
📊 Какой функцией вы обычно округляете числа в Excel?
ОТБР
ЦЕЛОЕ
ОКРУГЛ
ОКРВНИЗ
Пишу свою формулу

Способ 2: Функция ЦЕЛОЕ — округление до ближайшего меньшего целого

Функция ЦЕЛОЕ (INT) ведёт себя иначе: она возвращает наибольшее целое число, не превышающее заданное. Это классическое математическое округление вниз, которое корректно работает и с отрицательными значениями:

=ЦЕЛОЕ(число)

Ключевые особенности:

  • 🔹 Всегда возвращает целое число (дробная часть отбрасывается полностью).
  • 🔹 Для положительных чисел результат совпадает с ОТБР.
  • 🔹 Для отрицательных чисел ЦЕЛОЕ(-3.7) вернёт -4 (в отличие от ОТБР).

Примеры:

=ЦЕЛОЕ(8.9)    → 8

=ЦЕЛОЕ(-2.1) → -3

=ЦЕЛОЕ(0.5) → 0

⚠️ Внимание: ЦЕЛОЕ не поддерживает указание количества знаков после запятой. Если нужно округлить до десятых или сотых "вниз", используйте комбинацию с ОТБР или формулу на основе МАКС.

Способ 3: Функция ОКРВНИЗ — универсальное округление вниз

Функция ОКРВНИЗ (FLOOR) — самый гибкий инструмент для округления до меньшего значения с заданной точностью. Её синтаксис:

=ОКРВНИЗ(число; точность)

Где:

  • 🎯 число — исходное значение.
  • 📊 точность — кратность округления (например, 1 для целых, 0.1 для десятых, 5 для округления до ближайшего меньшего числа, кратного 5).

Примеры:

ФормулаРезультатПояснение
=ОКРВНИЗ(7.8; 1)7Округление до целого вниз
=ОКРВНИЗ(3.14; 0.1)3.1Округление до десятых вниз
=ОКРВНИЗ(-4.3; 1)-5Корректная работа с отрицательными числами
=ОКРВНИЗ(17; 5)15Округление до ближайшего меньшего числа, кратного 5

Критическое отличие от ОТБР и ЦЕЛОЕ: ОКРВНИЗ всегда округляет вниз относительно заданной точности, даже если число уже кратно ей. Например, =ОКРВНИЗ(10; 5) вернёт 10, а не 5.

Способ 4: Формула на основе МАКС — для сложных условий

Если стандартные функции не подходят (например, нужно округлить вниз с учётом динамического условия), можно использовать комбинацию МАКС и ЦЕЛОЕ. Пример:

=МАКС(ЦЕЛОЕ(число); условие)

Где условие — минимально допустимое значение. Например, чтобы округлить 15.7 до 15, но не ниже 10:

=МАКС(ЦЕЛОЕ(15.7); 10)  → 15

=МАКС(ЦЕЛОЕ(9.2); 10) → 10

Этот подход полезен для:

  • 📉 Ограничения нижней границы округления (например, не ниже нуля).
  • 🔄 Динамического округления с учётом других ячеек.
  • 📊 Работы с массивами данных, где нужно избежать отрицательных результатов.

Убедитесь, что условие логически совместимо с округлением|

Проверьте граничные случаи (например, число равно условию)|

Используйте абсолютные ссылки ($A$1) для фиксированных условий|

Тестируйте формулу на отрицательных числах-->

Способ 5: Пользовательская функция VBA — для автоматизации

Если вам часто приходится округлять числа вниз с нестандартными правилами (например, до ближайшего простого числа или с учётом внешних данных), имеет смысл создать пользовательскую функцию на VBA. Пример функции, которая округляет до меньшего целого, но возвращает 0 для чисел в диапазоне [-0.5; 0.5]:

Function CustomFloor(num As Double) As Double

If num >= -0.5 And num <= 0.5 Then

CustomFloor = 0

Else

CustomFloor = Application.WorksheetFunction.Floor(num, 1)

End If

End Function

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

  1. Нажмите Alt + F11, чтобы открыть редактор VBA.
  2. Вставьте код в модуль (меню Insert → Module).
  3. В Excel используйте как обычную функцию: =CustomFloor(A1).
⚠️ Внимание: Пользовательские функции VBA работают только в файлах с расширением .xlsm (с поддержкой макросов). При открытии на другом компьютере может потребоваться разрешить выполнение макросов.
Как ускорить работу VBA-функций?

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

Application.Calculation = xlCalculationManual

' Ваш код

Application.Calculation = xlCalculationAutomatic

Это ускорит обработку в 5-10 раз.

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

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

  1. Путаница между ОТБР и ЦЕЛОЕ для отрицательных чисел:

    ОТБР(-3.7) даст -3, а ЦЕЛОЕ(-3.7)-4. Если нужно математическое округление вниз, используйте ЦЕЛОЕ.

  2. Игнорирование точности в ОКРВНИЗ:

    =ОКРВНИЗ(5.6; 2) округлит до 4 (кратного 2), а не до 5. Всегда проверяйте второй аргумент.

  3. Округление результатов промежуточных вычислений:

    Если в формуле несколько шагов (например, =ОТБР(SUM(A1:A10)/3)), округление применяется к конечному результату. Для пошагового округления разбивайте формулу на несколько ячеек.

Чтобы минимизировать ошибки:

  • 🔍 Тестируйте формулы на граничных значениях (например, 0.999, -0.001).
  • 📌 Используйте F9 для проверки промежуточных результатов (выделите часть формулы и нажмите F9).
  • 📊 Для критичных расчётов дублируйте результат альтернативной функцией (например, ОТБР + ЦЕЛОЕ).

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

Можно ли округлить вниз до десятых/сотых без ОКРВНИЗ?

Да, используйте комбинацию ОТБР с умножением/делением:

=ОТБР(число * 10) / 10   → округление до десятых

=ОТБР(число * 100) / 100 → округление до сотых

Для отрицательных чисел замените ОТБР на ЦЕЛОЕ.

Почему =ОКРВНИЗ(5; 2) возвращает 4, а не 5?

Функция ОКРВНИЗ округляет до ближайшего меньшего числа, кратного второму аргументу. Для 5 и точности 2 ближайшее меньшее кратное число — 4 (так как 6 больше, а 4 ≤ 5).

Как округлить вниз дату или время?

В Excel даты и время хранятся как числа (например, 45000.5 — это дата + 12:00). Чтобы округлить время до полных дней (вниз), используйте:

=ЦЕЛОЕ(A1)  → округление даты+времени до полных дней

=ОТБР(A1; 0) → альтернативный вариант

Для округления до часов: =ОТБР(A1 * 24) / 24.

Можно ли округлить вниз весь столбец сразу?

Да, есть несколько способов:

  1. Скопируйте формулу (например, =ЦЕЛОЕ(A1)) вниз до конца данных.
  2. Используйте специальную вставку:
    1. Введите формулу в первой ячейке.
    2. Скопируйте её (Ctrl+C).
    3. Выделите диапазон, куда нужно применить округление.
    4. Правый клик → Специальная вставка → Формулы.
  3. Для постоянного округления (без формул) используйте Найти и заменить с регулярными выражениями или VBA.
Почему после округления вниз сумма чисел не совпадает с суммой округлённых чисел?

Это нормальное явление, связанное с накоплением ошибок округления. Например:

Исходные числа: 1.9, 2.1, 3.2 → Сумма = 7.2

Округлённые вниз: 1, 2, 3 → Сумма = 6

Чтобы минимизировать расхождения:

  • Округляйте только финальный результат, а не промежуточные значения.
  • Используйте больше знаков после запятой в промежуточных расчётах.