Как обрезать цифры в Excel: от форматирования до формул

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

Многие пользователи путают визуальное округление (когда число отображается короче, но сохраняет полное значение) с реальным усечением (когда лишние цифры удаляются навсегда). Например, если в ячейке 123,45678, то форматирование до 2 знаков покажет 123,46, но при расчётах будет использоваться исходное значение. А вот функция =ОКРУГЛ() или текстовые формулы изменят само число. Разберёмся, когда и какой метод применять.

Проблема обрезки чисел особенно актуальна при работе с импортированными данными: номерами заказов, финансовыми отчётами или научными вычислениями. Ошибка в выборе метода может привести к искажению результатов — например, если вместо округления вы случайно преобразуете число в текст. Поэтому важно понимать разницу между инструментами и их последствиями.

В этой статье вы найдёте:

  • 🔹 5 способов визуальной обрезки (без изменения значения)
  • 🔹 3 метода реального усечения (с изменением данных)
  • 🔹 Обработку специальных случаев: отрицательные числа, даты, научная нотация
  • 🔹 Автоматизацию через Power Query и VBA
📊 Как часто вы сталкиваетесь с необходимостью обрезать числа в Excel?
Ежедневно
Несколько раз в неделю
Редко
Никогда

1. Форматирование ячеек: визуальная обрезка без изменения данных

Самый простой способ "обрезать" числа — изменить их формат отображения. Это не затрагивает реальное значение в ячейке, но позволяет показать только нужные цифры. Подходит для отчётов, где важна читаемость, но точные расчёты не требуются.

Чтобы изменить формат:

  1. Выделите ячейки с числами.
  2. Нажмите Ctrl+1 (или правой кнопкой → Формат ячеек).
  3. Вкладка Число → выберите категорию (Числовой, Денежный, Процентный и др.).
  4. Укажите количество десятичных знаков (например, 2 для отображения двух цифр после запятой).

Пример: число 1234,5678 при формате с 1 десятичным знаком будет отображаться как 1234,6, но в строке формул останется исходное значение. Это удобно для валютных данных или когда нужно скрыть "лишнюю точность" без потери информации.

⚠️ Внимание: Если после форматирования ячейка показывает #####, значит ширина столбца недостаточна. Растяните его или уменьшите размер шрифта.

Для научной нотации (например, 1,23E+10) используйте формат Экспоненциальный. А если нужно показать ведущие нули (например, в кодах 00123), выберите категорию Текстовый или создайте пользовательский формат:

00000

2. Функции округления: когда нужно изменить само значение

Если визуальной обрезки недостаточно и требуется изменить хранящееся значение, используйте функции округления. Они возвращают новое число, которое можно сохранить поверх исходного или использовать в расчётах.

Основные функции:

  • 🔸 =ОКРУГЛ(число; кол_знаков) — стандартное округление (например, =ОКРУГЛ(3,14159; 2)3,14).
  • 🔸 =ОКРУГЛВВЕРХ() и =ОКРУГЛВНИЗ() — округление в большую или меньшую сторону (=ОКРУГЛВВЕРХ(3,141; 1)3,2).
  • 🔸 =ОКРУГЛТ() — округление до ближайшего кратного (полезно для цен с шагом 0,50).
  • 🔸 =ЦЕЛОЕ() — отбрасывает дробную часть (=ЦЕЛОЕ(5,99)5).

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

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

Пример: =ОТБР(123,456; 1) вернёт 123,4 (в отличие от =ОКРУГЛ(), который даст 123,5).

⚠️ Внимание: Функции =ЦЕЛОЕ() и =ОТБР() работают по-разному с отрицательными числами. Например, =ЦЕЛОЕ(-3,7)-4, а =ОТБР(-3,7; 0)-3.

Убедиться, что данные не используются в других формулах|

Создать резервную копию листа|

Проверить влияние на итоговые расчёты|

Использовать =ОТБР() вместо =ОКРУГЛ(), если нужно просто усечь, а не округлить-->

3. Текстовые функции: обрезка цифр как строк

Когда числа хранятся как текст (или нужно удалить часть символов), пригодятся текстовые функции. Они позволяют извлечь подстроку, удалить лишние символы или заменить их.

Основные функции:

  • 📌 =ЛЕВСИМВ(текст; кол_символов) — возвращает первые N символов (=ЛЕВСИМВ("12345"; 3)"123").
  • 📌 =ПРАВСИМВ(текст; кол_символов) — последние N символов (=ПРАВСИМВ("12345"; 2)"45").
  • 📌 =ПСТР(текст; нач_позиция; кол_символов) — извлекает фрагмент с указанной позиции (=ПСТР("12345"; 2; 3)"234").
  • 📌 =ЗАМЕНИТЬ(текст; старый_текст; новый_текст) — заменяет или удаляет символы (=ЗАМЕНИТЬ("123-456"; "-"; "")"123456").

Пример: чтобы оставить только последние 4 цифры в номере телефона +7(912)345-67-89, используйте:

=ПРАВСИМВ(A1; 4)

Результат: 6789.

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

=ЗНАЧЕН(ЛЕВСИМВ("123,45руб"; 5))

Результат: 123,45 (число, а не текст).

Как определить, текст или число в ячейке?

Если данные выровнены по левому краю — это текст. По правому — число. Также проверьте с помощью функции =ТИП(A1): 1 — число, 2 — текст.

4. Обрезка с помощью Power Query: обработка больших данных

Для обработки тысяч строк удобнее использовать Power Query (вкладка ДанныеИз таблицы/диапазона). Этот инструмент позволяет:

  • 📊 Удалить столбцы с лишними цифрами.
  • 📊 Разделить текст по разделителю (например, извлечь числа из строки "Код: 12345").
  • 📊 Применить преобразования ко всем данным сразу.

Пример: обрежем первые 2 цифры в столбце с кодами 1234563456:

  1. Загрузите данные в Power Query.
  2. Выделите столбец → ПреобразоватьИзвлечьТекст после позиций.
  3. Укажите 2 (количество удаляемых символов).
  4. Нажмите Закрыть и загрузить.

Power Query сохраняет историю преобразований, поэтому при обновлении исходных данных изменения применятся автоматически. Это идеально для регулярных отчётов.

Метод Пример Изменяет ли данные? Подходит для больших данных?
Форматирование ячеек 123,456123,46 Нет Да
=ОКРУГЛ() 123,456123,46 Да Да
=ПРАВСИМВ() "12345""345" Да (в текст) Нет
Power Query 1234563456 Да Да

5. Макросы VBA: автоматизация для повторяющихся задач

Если обрезка чисел — рутинная задача, запишите макрос или используйте готовый код. Например, этот скрипт удаляет все символы после запятой в выделенных ячейках:

Sub TrimDecimals()

For Each cell In Selection

If IsNumeric(cell.Value) Then

cell.Value = Int(cell.Value)

End If

Next cell

End Sub

Чтобы запустить:

  1. Нажмите Alt+F11 для открытия редактора VBA.
  2. Вставьте код в новый модуль (Insert → Module).
  3. Выделите ячейки в Excel и запустите макрос (Alt+F8 → выберите TrimDecimalsRun).

Для более сложных задач (например, обрезки по условию) модифицируйте код. Например, чтобы оставить только 3 последние цифры в каждом числе:

Sub KeepLastThreeDigits()

For Each cell In Selection

If IsNumeric(cell.Value) Then

cell.Value = Right(cell.Value, 3)

End If

Next cell

End Sub

⚠️ Внимание: Макросы изменяют данные необратимо. Перед запуском сохраните файл или создайте копию листа. Также убедитесь, что в настройках Excel разрешено выполнение макросов (Файл → Параметры → Центр управления безопасностью → Параметры центра → Включить все макросы).

6. Специальные случаи: даты, отрицательные числа, научная нотация

Некоторые форматы чисел требуют особого подхода. Рассмотрим типичные проблемы и решения:

1. Даты и время

Excel хранит даты как числа (например, 45000 = 11.01.2023). Если применить =ОКРУГЛ() к дате, она преобразуется в число дней. Чтобы обрезать время (оставить только дату), используйте:

=ЦЕЛОЕ(A1)

или форматируйте ячейку как Дата без отображения времени.

2. Отрицательные числа

Функции =ЦЕЛОЕ() и =ОТБР() работают с ними по-разному:

  • 🔺 =ЦЕЛОЕ(-3,7)-4 (округление вниз).
  • 🔺 =ОТБР(-3,7; 0)-3 (простое усечение).

3. Научная нотация

Если число отображается как 1,23E+10, но нужно показать все цифры:

  1. Увеличьте ширину столбца.
  2. Используйте пользовательский формат 0 (без десятичных знаков).
  3. Или преобразуйте в текст: =ТЕКСТ(A1; "0").

4. Номера телефонов и коды

Часто требуется удалить разделители или оставить только часть номера. Пример для +7 (912) 345-67-899123456789:

=ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1; " "; ""); "-"; ""); "("; ""); "+"; "")

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

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

1. Потеря точности при округлении

Если вы последовательно применяете округление к результатам предыдущих округлений, погрешность накапливается. Например:

=ОКРУГЛ(ОКРУГЛ(1,23456; 3); 2)

Сначала получим 1,235, затем 1,24. Если округлить сразу до 2 знаков: =ОКРУГЛ(1,23456; 2)1,23.

2. Преобразование чисел в текст

Функции вроде =ЛЕВСИМВ() возвращают текст, даже если исходное значение было числом. Это приведёт к ошибкам в формулах. Чтобы вернуть числовой формат, используйте =ЗНАЧЕН():

=ЗНАЧЕН(ЛЕВСИМВ("123,45"; 5))

3. Неучёт региональных настроек

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

  1. Файл → Параметры → Дополнительно.
  2. Снимите галочку Использовать системные разделители и укажите нужные символы.

4. Обрезка в формулах массива

Если применяете обрезку внутри {формулы массива} (вводимой через Ctrl+Shift+Enter), убедитесь, что результат имеет правильный формат. Например:

=ОТБР(А1:А10; 0)

может вернуть текст, если исходные данные смешанные.

⚠️ Внимание: При импорте данных из CSV или баз данных числа с ведущими нулями (например, 00123) автоматически преобразуются в 123. Чтобы сохранить нули, импортируйте столбец как текст или используйте пользовательский формат 00000.

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

Как обрезать число до запятой, оставив только целую часть?

Используйте функцию =ЦЕЛОЕ() или =ОТБР(число; 0). Например:

=ЦЕЛОЕ(123,456)

вернёт 123. Если нужно преобразовать в текст, оберните в =ТЕКСТ().

Можно ли обрезать числа в Excel Online?

Да, но с ограничениями:

  • 📱 Доступны все функции (=ОКРУГЛ(), =ЛЕВСИМВ() и др.).
  • 📱 Нет Power Query и макросов VBA.
  • 📱 Форматирование ячеек работает так же, как в десктопной версии.

Для сложных задач используйте десктопный Excel или Power Automate.

Как удалить все цифры после запятой в выделенном диапазоне?

Самый быстрый способ:

  1. Выделите диапазон.
  2. Нажмите Ctrl+H (замена).
  3. В поле Найти введите .* (точка и звёздочка).
  4. Поле Заменить на оставьте пустым.
  5. Нажмите Заменить всё.
Важно: Это преобразует числа в текст! Для числового результата используйте =ОТБР().

Почему после обрезки формулы перестали работать?

Скорее всего, вы преобразовали числа в текст. Проверьте:

  • 🔍 Формат ячейки (должен быть Общий или Числовой).
  • 🔍 Используйте =ЗНАЧЕН(), чтобы вернуть числовой формат.
  • 🔍 Убедитесь, что в ячейках нет скрытых символов (пробелов, неразрывных пробелов).

Пример исправления: =ЗНАЧЕН(ПРАВСИМВ(A1; 4)).

Как обрезать числа в сводной таблице?

В сводных таблицах нельзя напрямую изменять данные, но можно:

  • 📊 Отформатировать поле значений (правая кнопка → Параметры поля значенийЧисловой формат).
  • 📊 Добавить вычисляемое поле с функцией обрезки (=ОТБР([Сумма продаж]; 0)).
  • 📊 Изменить исходные данные перед созданием сводной таблицы.