Работа с десятичными числами в Microsoft Excel часто требует корректировки отображения или точности данных. Один из самых распространённых запросов — как убрать значения после запятой, чтобы оставить только целые числа. На первый взгляд задача кажется простой, но в Excel существует как минимум 7 различных способов достичь этого результата, и каждый из них имеет свои нюансы.
Проблема усложняется тем, что пользователи не всегда понимают разницу между визуальным форматированием (когда числа отображаются без дробной части, но сохраняют её в ячейке) и реальным округлением (когда дробная часть удаляется навсегда). Например, если вы примените формат "Целое" к ячейке с числом 3.78, на экране отобразится 4, но в формулах и вычислениях по-прежнему будет использоваться исходное значение. Это может привести к ошибкам в финансовых расчётах или статистических отчётах.
В этой статье мы разберём все актуальные методы — от базовых функций округления до продвинутых приёмов с использованием Power Query и VBA. Вы узнаете, какой способ подходит для вашей задачи: нужно ли просто скрыть дробную часть или полностью её удалить, работаете ли вы с статичными данными или динамическими таблицами. Особое внимание уделим типичным ошибкам, которые допускают даже опытные пользователи при работе с десятичными числами.
1. Форматирование ячеек: самый быстрый, но обманчивый способ
Начнём с метода, который используют 90% новичков — изменения формата ячейки. Это самый простой способ "убрать" цифры после запятой, но он имеет критический недостаток: число в ячейке не меняется, изменяется только его отображение. Например, если вы примените формат "Целое" к ячейке со значением 5.49, на экране появится 5, но в формулах Excel будет по-прежнему использовать 5.49.
Как применить форматирование:
- Выделите ячейки или диапазон, который нужно отформатировать.
- Нажмите правой кнопкой мыши и выберите
Формат ячеек...(или используйте горячие клавишиCtrl+1). - В открывшемся окне перейдите на вкладку
Число. - Выберите категорию
Числовойи установите0десятичных знаков. - Нажмите
ОК.
Где этот метод работает:
- ✅ Отчёты для презентаций, где важно только визуальное отображение.
- ✅ Таблицы с данными, которые не участвуют в дальнейших расчётах.
- ✅ Быстрое изменение внешнего вида без редактирования формул.
Где нельзя использовать этот метод:
- ❌ Финансовые расчёты (например, округление сумм в бухгалтерии).
- ❌ Данные для дальнейшей обработки в формулах или сводных таблицах.
- ❌ Экспорт данных в другие системы, где важна точность.
Что произойдёт если отформатировать ячейку с формулой?
Если ячейка содержит формулу вроде =A1*B1, где A1=2.3 и B1=3.7, то при форматировании результата как "Целое" вы увидите 8 (округлённое значение от 8.51). Однако если вы затем используете эту ячейку в другой формуле, Excel будет подставлять исходное значение 8.51, а не отображаемое 8. Это может привести к скрытым ошибкам в расчётах.
2. Функции округления: ОКРУГЛ, ОКРУГЛВВЕРХ, ОКРУГЛВНИЗ и другие
Если вам нужно не просто скрыть дробную часть, а навсегда изменить значение в ячейке, используйте функции округления. В Excel их несколько, и каждая ведёт себя по-разному:
| Функция | Синтаксис | Пример | Результат | Когда использовать |
|---|---|---|---|---|
ОКРУГЛ |
=ОКРУГЛ(число; число_разрядов) |
=ОКРУГЛ(3.6; 0) |
4 |
Классическое округление (0-4 отбрасывается, 5-9 округляет вверх). |
ОКРУГЛВВЕРХ |
=ОКРУГЛВВЕРХ(число; точность) |
=ОКРУГЛВВЕРХ(3.2; 1) |
4 |
Всегда округляет вверх (например, для расчёта запасов). |
ОКРУГЛВНИЗ |
=ОКРУГЛВНИЗ(число; точность) |
=ОКРУГЛВНИЗ(3.9; 1) |
3 |
Всегда округляет вниз (например, для расчёта полных единиц). |
ЦЕЛОЕ |
=ЦЕЛОЕ(число) |
=ЦЕЛОЕ(5.99) |
5 |
Отбрасывает дробную часть (аналог округления вниз). |
ОТБР |
=ОТБР(число; число_разрядов) |
=ОТБР(7.89; 0) |
7 |
Просто обрезает цифры после запятой без округления. |
Пример использования: если у вас в ячейке A1 значение 12.78, и вам нужно получить 13, используйте:
=ОКРУГЛ(A1; 0)
Если же вам нужно всегда округлять в меньшую сторону (например, для расчёта количества полных коробок), используйте:
=ОКРУГЛВНИЗ(A1; 0)
⚠️ Внимание: ФункцияЦЕЛОЕработает иначе, чем может показаться. Например,=ЦЕЛОЕ(-3.7)вернёт-4, а не-3, потому что округляет к ближайшему меньшему целому числу, а не просто отбрасывает дробную часть. Для отрицательных чисел используйтеОТБР, если нужно именно обрезать цифры.
3. Удаление дробной части без округления (функция ОТБР)
Если вам нужно полностью удалить цифры после запятой без округления (например, при работе с идентификаторами или кодами, где дробная часть — артефакт импорта), используйте функцию ОТБР. Она просто обрезает лишние цифры, не изменяя целую часть.
Синтаксис:
=ОТБР(число; [число_разрядов])
число— ячейка или значение, которое нужно обработать.число_разрядов— сколько знаков оставить после запятой. Для целых чисел используйте0.
Примеры:
=ОТБР(5.99; 0)→5(просто отбросит.99).=ОТБР(-2.3; 0)→-2(в отличие отЦЕЛОЕ, не округляет вниз).=ОТБР(123.4567; 2)→123.45(оставит 2 знака после запятой).
Где это полезно:
- 📊 Обработка данных с датчиками, где дробная часть — шум.
- 🔢 Работа с идентификаторами или кодами (например,
1001.000→1001). - 📈 Подготовка данных для визуализации, где дробная часть не нужна.
Вы уверены, что дробная часть не важна для дальнейших расчётов?|Проверьте, нет ли в данных отрицательных чисел (ОТБР работает с ними иначе, чем ЦЕЛОЕ)|Убедитесь, что после обрезки числа не потеряют смысл (например, 3.99 → 3 может быть критично)|Сохраните оригинальные данные в отдельном столбце на случай ошибки-->
4. Использование "Текст по столбцам" для преобразования в целые числа
Если числа в вашей таблице хранятся как текст (например, после импорта из CSV или базы данных), стандартные функции округления могут не сработать. В этом случае поможет инструмент Текст по столбцам, который позволяет преобразовать данные в нужный формат.
Пошаговая инструкция:
- Выделите столбец с числами, которые нужно преобразовать.
- Перейдите на вкладку
Данныеи выберитеТекст по столбцам. - В первом окне мастера выберите
С разделителямии нажмитеДалее. - Снимите все галочки с разделителей (запятая, табуляция и т.д.) и нажмите
Далее. - На третьем шаге выберите формат
ОбщийилиЧисловойи нажмитеГотово.
После этого Excel преобразует текстовые числа в числовой формат, и вы сможете применить к ним функции округления. Этот метод особенно полезен, если при импорте данных дробная часть отображается как текст (например, '12.34 вместо 12.34).
⚠️ Внимание: Если в ваших данных используются запятые как разделители тысяч (например,1,234.56), инструментТекст по столбцамможет неправильно интерпретировать их как десятичные разделители. Перед преобразованием замените запятые на другой символ (например, пробел) с помощью функцииПОДСТАВИТЬ.
5. Power Query: продвинутая обработка больших массивов данных
Если вы работаете с большими таблицами (тысячи строк) или вам нужно регулярно очищать данные от дробной части, стоит освоить Power Query — инструмент для преобразования и очистки данных, встроенный в Excel 2016 и новее.
Как убрать дробную часть с помощью Power Query:
- Выделите вашу таблицу и перейдите на вкладку
Данные→Из таблицы/диапазона(илиПолучить данные→Из таблицы/диапазонав новых версиях). - В открывшемся редакторе Power Query выделите столбец с числами.
- Перейдите на вкладку
Преобразованиеи выберитеОкругление→Округление вниз(илиОкругление вверх, если нужно). - В поле
Число десятичных знаковукажите0. - Нажмите
Закрыть и загрузить, чтобы применить изменения.
Преимущества Power Query:
- 🔄 Возможность создать повторяемый процесс очистки данных.
- 📊 Обработка миллионов строк без замедления Excel.
- 🔧 Гибкие настройки (можно комбинировать с другими преобразованиями).
Пример использования: если у вас ежемесячно поступают данные с дробными значениями, вы можете один раз настроить запрос в Power Query, а затем просто обновлять его, не повторяя действия вручную.
6. VBA-макрос для автоматического удаления дробной части
Если вам нужно регулярно обрабатывать десятки файлов или применять одно и то же преобразование к разным диапазонам, стоит автоматизировать процесс с помощью VBA. Ниже приведён макрос, который удаляет дробную часть во всех выбранных ячейках:
Sub RemoveDecimalPart()
Dim cell As Range
For Each cell In Selection
If IsNumeric(cell.Value) Then
cell.Value = Int(cell.Value)
End If
Next cell
End Sub
Как использовать:
- Нажмите
Alt + F11, чтобы открыть редактор VBA. - Вставьте код выше в новый модуль (
Insert→Module). - Вернитесь в Excel, выделите нужные ячейки и запустите макрос (
Alt + F8→ выберитеRemoveDecimalPart→Выполнить).
Что делает этот макрос:
- Проходит по всем выделенным ячейкам.
- Проверяет, является ли значение числом (
IsNumeric). - Применяет функцию
Int(аналогЦЕЛОЕв формулах), которая отбрасывает дробную часть.
⚠️ Внимание: Макрос безвозвратно изменяет данные в ячейках. Перед запуском сохраните резервную копию файла или дублируйте данные на другом листе. Также учтите, чтоIntдля отрицательных чисел работает какОКРУГЛВНИЗ, а не какОТБР(например,Int(-3.7)вернёт-4).
7. Особенности работы с датами и временем
В Excel даты и время хранятся как числа, где целая часть — это количество дней с 1 января 1900 года, а дробная — время (например, 45000.5 соответствует полудню 7 мая 2023 года). Если вы примените функции округления к таким данным, результаты могут быть неожиданными.
Примеры:
=ОКРУГЛ(45000.5; 0)→45001(переход на следующий день!).=ОТБР(45000.9; 0)→45000(время просто обрезается).=ЦЕЛОЕ(45000.1)→45000(аналогОТБРдля положительных чисел).
Как правильно работать с датами:
- 📅 Если нужно убрать время, но оставить дату, используйте
=ЦЕЛОЕ(A1)или=ОТБР(A1; 0). - ⏰ Если нужно оставить только время, используйте
=A1-ЦЕЛОЕ(A1)и примените формат времени. - ⚠️ Никогда не используйте
ОКРУГЛдля дат — это может сдвинуть дату на день вперёд!
Пример: если в ячейке A1 находится дата и время 07.05.2023 15:30 (внутреннее значение 45000.6458), то:
=ОТБР(A1; 0)вернёт45000(дату без времени).=A1-ОТБР(A1; 0)вернёт0.6458(время в долях дня).
Сравнение методов: какой выбрать?
Чтобы помочь вам определиться с методом, мы собрали сравнительную таблицу:
| Метод | Изменяет ли данные? | Работает с отрицательными числами? | Скорость обработки | Когда использовать |
|---|---|---|---|---|
| Форматирование ячеек | ❌ Нет (только отображение) | ✅ Да | ⚡ Мгновенно | Для визуального отображения без изменения данных. |
ОКРУГЛ |
✅ Да | ✅ Да | ⚡ Быстро | Классическое округление по математическим правилам. |
ОТБР |
✅ Да | ✅ Да (но для отрицательных работает как ЦЕЛОЕ) |
⚡ Быстро | Когда нужно просто отбросить дробную часть без округления. |
ЦЕЛОЕ |
✅ Да | ✅ Да (округляет к меньшему целому) | ⚡ Быстро | Для финансовых расчётов, где важно не завышать значения. |
| Power Query | ✅ Да (в новой таблице) | ✅ Да | 🐢 Медленнее (но обрабатывает большие объёмы) | Для регулярной обработки больших массивов данных. |
| VBA-макрос | ✅ Да | ✅ Да | ⚡ Быстро (для тысяч ячеек) | Для автоматизации повторяющихся задач. |
Рекомендации по выбору:
- 📊 Для отчётов и презентаций — форматирование ячеек.
- 🔢 Для точных расчётов —
ОТБРилиЦЕЛОЕ. - 📈 Для статистики и анализа —
ОКРУГЛ. - 🤖 Для автоматизации — Power Query или VBA.
FAQ: Частые вопросы по удалению дробной части в Excel
Можно ли убрать цифры после запятой только в выделенных ячейках, не затрагивая формулы?
Да, для этого используйте форматирование ячеек (метод 1). Оно не изменяет сами данные, а только их отображение. Если же вам нужно изменить значения в ячейках без формул, используйте ОТБР или ЦЕЛОЕ в дополнительном столбце, а затем специальной вставкой (Ctrl+Shift+V → Значения) замените оригинальные данные.
Почему после применения ОКРУГЛ в сводной таблице числа всё равно отображаются с запятыми?
Сводные таблицы имеют собственные настройки форматирования, которые могут перекрывать формат исходных данных. Чтобы исправить это:
- Щёлкните правой кнопкой по ячейке в сводной таблице.
- Выберите
Формат чисел. - Установите
0десятичных знаков.
Если это не помогает, проверьте настройки источника данных — возможно, дробная часть добавляется на этапе импорта.
Как убрать ненужные нули после запятой (например, 5.000 → 5)?
Это проблема форматирования. Выделите ячейки и:
- Нажмите
Ctrl+1(Формат ячеек). - Выберите категорию
Числовой. - Установите
0десятичных знаков. - Снимите галочку
Разделитель групп разрядов, если она мешает.
Если числа хранятся как текст (например, '5.000), используйте Текст по столбцам (метод 4), чтобы преобразовать их в числовой формат.
Можно ли настроить Excel так, чтобы он автоматически убирал дробную часть при вводе?
Да, для этого:
- Выделите диапазон, где будут вводиться данные.
- Перейдите в
Данные→Проверка данных. - В поле
Тип данныхвыберитеЦелое число. - Укажите диапазон допустимых значений (например, от
0до1000).
Теперь при вводе дробных чисел Excel будет выдавать предупреждение. Чтобы автоматически округлять введённые данные, используйте VBA-код для события Worksheet_Change:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim cell As Range
For Each cell In Target
If IsNumeric(cell.Value) Then
cell.Value = Int(cell.Value)
End If
Next cell
End Sub
Этот код будет срабатывать при каждом изменении ячейки на листе.
Что делать, если после импорта из CSV все числа отображаются с запятыми, хотя в файле их нет?
Это типичная проблема при импорте данных из CSV, где в качестве разделителя используется запятая. Excel может интерпретировать такие файлы неправильно, особенно если региональные настройки системы отличаются от формата файла. Решения:
- 🔄 Используйте
Текст по столбцам(метод 4) и вручную укажите разделитель. - 📑 Откройте файл в Блокноте и замените запятые на точки (или наоборот), затем импортируйте заново.
- 🌍 Измените региональные настройки Excel:
Файл→Параметры→Дополнительно→Разделитель целой и дробной части.