Десятичные дроби в Microsoft Excel часто становятся источником раздражения: лишние нули после запятой портят внешний вид отчётов, мешают сортировке или просто не нужны в контексте задачи. Например, когда вы работаете с целыми числами (количество товаров, идентификаторы клиентов), а программа упорно показывает 15,000 вместо 15. Или когда финансовые данные требуют округления до копеек, но Excel сохраняет лишние знаки после запятой, искажая итоговые суммы.
Проблема усложняется тем, что простое удаление знаков вручную — не решение: Excel хранит исходное значение, и при следующем обновлении данные вернутся к прежнему виду. В этой статье мы разберём 7 способов убрать десятичные знаки — от базового форматирования до автоматизированных методов с формулами и макросами. Особое внимание уделим типичным ошибкам, из-за которых числа "не хотят" округляться, и научимся отличать визуальное форматирование от реального изменения данных.
1. Самый быстрый способ: форматирование ячеек
Если вам нужно просто скрыть десятичные знаки без изменения самих данных (например, для презентации отчёта), используйте инструменты форматирования. Это не удалит дроби из памяти программы, но визуально таблица станет чище.
Как это сделать:
- 📌 Выделите диапазон ячеек с числами (например,
A1:D20). - 🔧 Нажмите правой кнопкой мыши и выберите
Формат ячеек...(или используйте горячие клавишиCtrl+1). - 📊 В открывшемся окне перейдите на вкладку
Число→ выберите категориюЧисловой. - 🔢 В поле
Число десятичных знаковукажите0.
⚠️ Внимание: Этот метод не меняет сами данные! Если выlater скопируете такие ячейки в другую программу (например, в Word или Google Sheets), десятичные знаки могут снова появиться. Для полного удаления используйте методы из следующих разделов.
2. Округление с помощью функций: когда точность важна
Если вам нужно не просто скрыть, а математически округлить числа (например, для финансовых расчётов или статистики), используйте функции Excel. Они изменят сами данные, а не только их отображение.
Основные функции для округления:
- 🔹
=ОКРУГЛ(число; 0)— классическое округление до целого (например,3,6станет4, а3,4—3). - 🔹
=ОКРУГЛВНИЗ(число; 0)— всегда округляет в меньшую сторону (даже9,9станет9). - 🔹
=ОКРУГЛВВЕРХ(число; 0)— всегда округляет в большую сторону (даже1,1станет2). - 🔹
=ЦЕЛОЕ(число)— отбрасывает дробную часть без округления (5,99станет5).
Пример использования:
=ОКРУГЛ(A1; 0)
=ОКРУГЛВВЕРХ(B2*1,1; 2)
3. Удаление знаков с помощью "Текст по столбцам"
Этот метод полезен, когда числа хранятся в текстовом формате (например, после импорта из CSV или базы данных) и содержат лишние символы, включая десятичные разделители. Инструмент Текст по столбцам позволяет "разбить" данные и оставить только целую часть.
Пошаговая инструкция:
- Выделите столбец с данными.
- Перейдите на вкладку
Данные→Текст по столбцам. - В первом окне выберите
С разделителями→Далее. - Снимите все галочки в разделе
Разделители(оставьте пустым) →Далее. - В последнем окне выберите формат данных для столбца (
ОбщийилиТекстовый) и укажите целевую ячейку.
⚠️ Внимание: Если в ячейках были настоящие числа (не текст), этот метод может преобразовать их в текстовый формат. Чтобы вернуть числовой формат, после операции умножьте столбец на 1 (например, введите в соседней ячейке =A1*1 и протяните формулу вниз).
4. Замена через "Найти и заменить" — когда дроби не нужны совсем
Если десятичные знаки — это артефакты импорта или ошибки ввода (например, 15, вместо 15), их можно удалить глобальной заменой. Этот способ подходит для текстовых данных, где запятая не является разделителем дробной части.
Как это работает:
- 🔍 Нажмите
Ctrl+H(илиГлавная → Найти и выделить → Заменить). - 📝 В поле
Найтивведите,(запятая). - 📝 Поле
Заменить наоставьте пустым. - 🔄 Нажмите
Заменить всё.
⚠️ Внимание: Если в ваших данных запятая используется как разделитель тысяч (например, 1 000,50), этот метод удалит все запятые, включая те, что разделяет разряды. В таком случае предварительно замените пробелы на пустые символы, а затем удаляйте запятые.
Убедиться, что данные не содержат запятых как разделителей тысяч|Сделать резервную копию таблицы|Проверить, что ячейки в текстовом формате (если нужно)|Использовать "Найти и заменить" только для выделенного диапазона-->
5. Продвинутый метод: Power Query для массовой обработки
Если вы работаете с большими наборами данных (тысячи строк), ручное форматирование или формулы могут замедлить работу. В этом случае поможет Power Query — инструмент для преобразования данных, встроенный в Excel 2016 и новее.
Алгоритм действий:
- Выделите диапазон данных →
Данные → Из таблицы/диапазона(Excel автоматически преобразует выборку в таблицу). - В открывшемся редакторе Power Query выделите столбец с числами.
- На вкладке
ПреобразованиевыберитеОкругление → Округлить до целого(илиОкруглить вниз/вверх). - Нажмите
Закрыть и загрузить, чтобы применить изменения.
Power Query сохраняет шаги преобразования, поэтому при обновлении исходных данных (например, при импорте нового отчёта) все округления применятся автоматически.
| Метод | Изменяет данные? | Подходит для больших массивов? | Сохраняет точность? |
|---|---|---|---|
| Форматирование ячеек | ❌ Нет | ✅ Да | ✅ Да (исходные данные не меняются) |
| Функции округления | ✅ Да | ⚠️ Условно (может замедлить файл) | ❌ Нет (данные округляются) |
| Текст по столбцам | ✅ Да | ❌ Нет (ручная операция) | ❌ Нет (может преобразовать в текст) |
| Найти и заменить | ✅ Да | ✅ Да | ❌ Нет (удаляет символы) |
| Power Query | ✅ Да | ✅ Да | ❌ Нет (округляет данные) |
6. Макросы для автоматизации: когда нужно обработать сотни файлов
Если вам регулярно приходится убирать десятичные знаки в десятках файлов, имеет смысл написать простой макрос на VBA. Например, этот код округлит все числа в выделенном диапазоне до целых:
Sub RoundToInteger()
Dim cell As Range
For Each cell In Selection
If IsNumeric(cell.Value) Then
cell.Value = WorksheetFunction.Round(cell.Value, 0)
End If
Next cell
End Sub
Как использовать:
- Нажмите
Alt+F11, чтобы открыть редактор VBA. - Вставьте код в новый модуль (
Insert → Module). - Вернитесь в Excel, выделите нужный диапазон и запустите макрос (
Alt+F8 → RoundToInteger → Выполнить).
⚠️ Внимание: Макросы изменяют данные необратимо. Перед запуском сохраните резервную копию файла или используйте макрос на копии данных. Также убедитесь, что в выделенном диапазоне нет текстовых ячеек с важными запятыми (например, адреса или описания).
Как отменить действия макроса?
Если макрос уже запущен и вы хотите вернуть исходные данные, используйте комбинацию Ctrl+Z немедленно после выполнения. Однако в больших файлах отмена может не сработать. Надёжнее — сохранять резервную копию перед запуском или тестировать макрос на копии данных.
7. Особенности работы с денежными форматами и валютами
При удалении десятичных знаков в финансовых данных (рубли, доллары, евро) важно помнить о правилах округления, установленных в вашей стране или компании. Например, в бухгалтерии часто требуется округлять суммы до копеек (2 знака после запятой), а не до целых чисел.
Типичные ошибки:
- 💰 Округление налогов (НДС, НДФЛ) до целых — это нарушение законодательства (суммы должны указываться с копейками).
- 📉 Искажение итоговых сумм в отчётах из-за неправильного округления промежуточных значений.
- 🔄 Конвертация валют без учёта десятичных знаков (например,
1,23 USD→1 USDприведёт к потере 23 центов).
Рекомендации:
- 📌 Для финансовых отчётов используйте формат
ДенежныйилиФинансовыйс 2 десятичными знаками. - 📌 Если нужно округлять итоги, делайте это только в финальной ячейке, а не в промежуточных расчётах.
- 📌 Для конвертации валют используйте функцию
=ОКРУГЛ(сумма_в_валюте * курс; 2).
Частые вопросы и ошибки
Почему после форматирования ячеек десятичные знаки возвращаются?
Это происходит потому, что вы изменили только отображение чисел, но не их реальное значение. Чтобы удалить дроби навсегда, используйте функции округления (=ОКРУГЛ()) или инструмент Текст по столбцам.
Как убрать запятые в числах, но сохранить их в тексте?
Используйте Условное форматирование или Power Query с фильтрацией по типу данных. Например, в Power Query можно применить округление только к числовым столбцам, оставив текстовые без изменений.
Можно ли удалить запятые в защищённых ячейках?
Нет, если ячейки защищены от изменений. Сначала снимите защиту: Рецензирование → Снять защиту листа (потребуется пароль, если он установлен).
Почему функция =ЦЕЛОЕ() даёт неверный результат для отрицательных чисел?
Функция =ЦЕЛОЕ() всегда округляет в сторону нуля. Для отрицательных чисел (например, -3,7) она вернёт -3, а не -4. Чтобы округлить в меньшую сторону, используйте =ОКРУГЛВНИЗ().
Как автоматически убирать запятые при импорте данных из CSV?
При импорте через Данные → Из текста на шаге выбора разделителя укажите, что запятая — это десятичный разделитель, а не разделитель столбцов. Затем примените округление через Power Query.