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

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

Важно понимать, что подход зависит от формата исходных данных. Числа и текст обрабатываются по-разному: например, функция ЛЕВСИМВ не сработает с числовым значением без предварительного преобразования. Мы детально разберем нюансы, чтобы вы могли выбрать оптимальный вариант без ошибок. А для тех, кто работает с Excel Online или мобильной версией, укажем на ограничения и альтернативы.

1. Способ: Функция ЛЕВСИМВ для текстовых данных

Если ваши данные хранятся в текстовом формате (например, артикулы типа "AB12345" или номера документов), самый простой способ — использовать функцию ЛЕВСИМВ (или LEFT в английской версии). Она извлекает заданное количество символов с начала строки.

Формула для удаления двух последних цифр:

=ЛЕВСИМВ(A1;ДЛСТР(A1)-2)

Разберем на примере: если в ячейке A1 содержится значение "Партия789", формула вернет "Партия7". Обратите внимание, что ДЛСТР (аналог LEN) вычисляет общую длину строки, а мы отнимаем 2 символа, которые нужно убрать.

  • ✅ Подходит для: текстовых строк с цифрами в конце
  • ✅ Сохраняет: регистр и специальные символы
  • ❌ Не работает: с числовыми данными без преобразования

2. Способ: Преобразование числа в текст + ЛЕВСИМВ

Частая ошибка новичков — попытка применить ЛЕВСИМВ к числу напрямую. Excel вернет ошибку #ЗНАЧ!, потому что функция работает только с текстовыми данными. Решение: сначала преобразовать число в текст с помощью ТЕКСТ (или TEXT).

Комбинированная формула:

=ЛЕВСИМВ(ТЕКСТ(A1;0);ДЛСТР(ТЕКСТ(A1;0))-2)

Здесь ТЕКСТ(A1;0) преобразует число в текстовый формат без десятичных знаков. Например, для значения 12345 в ячейке A1 результат будет "123". Если нужно сохранить число (а не текст), добавьте внешнюю функцию ЗНАЧЕН:

=ЗНАЧЕН(ЛЕВСИМВ(ТЕКСТ(A1;0);ДЛСТР(ТЕКСТ(A1;0))-2))
⚠️ Внимание: Формат ТЕКСТ(A1;0) округлит число до целого. Если в ячейке было 12345.67, оно станет 12346 до обработки. Для сохранения дробной части используйте формат ТЕКСТ(A1;"0.00") и корректируйте количество удаляемых символов.

3. Способ: Функции ЦЕЛОЕ и ОКРУГЛ для числовых данных

Если задача — убрать две последние цифры из числа (например, округлить 12345 до 12300), проще использовать математические функции. Варианты:

  • 🔢 =ОКРУГЛ(A1;-2) — округление до сотен (для 12345 вернет 12300)
  • 🔢 =ЦЕЛОЕ(A1/100)*100 — отсечение до сотен (для 12349 вернет 12300)
  • 🔢 =ОКРУГЛВНИЗ(A1;-2) — округление вниз до сотен (аналог ЦЕЛОЕ)

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

Исходное значениеОКРУГЛЦЕЛОЕ/100*100ОКРУГЛВНИЗ
12345123001230012300
12349123001230012300
-12345-12300-12400-12400
12345.67123001230012300
📊 Какой способ округления вы используете чаще?
Функция ОКРУГЛ
ЦЕЛОЕ с делением
ОКРУГЛВНИЗ
Другой вариант

4. Способ: Инструмент "Текст по столбцам"

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

Пошаговая инструкция:

  1. Выделите столбец с данными.
  2. Перейдите в Данные → Текст по столбцам.
  3. Выберите С разделителями → Далее.
  4. Снимите все галочки в разделе Разделители (оставьте пустым).
  5. Нажмите Готово.

Теперь каждая цифра окажется в отдельной ячейке. Удалите два последних столбца с ненужными цифрами, а оставшиеся данные объедините функцией СЦЕПИТЬ или CONCATENATE.

Создайте резервную копию данных|Проверьте, нет ли пустых ячеек в столбце|Убедитесь, что справа достаточно свободных столбцов|Отмените объединение ячеек (если есть)

-->

⚠️ Внимание: Этот метод разрушает исходную структуру данных. Если в ячейках были формулы, они превратятся в значения. Также инструмент не работает с ячейками, содержащими более 255 символов.

5. Способ: Макрос VBA для массовой обработки

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

Код макроса:

Sub УдалитьПоследниеДвеЦифры()

Dim cell As Range

For Each cell In Selection

If IsNumeric(cell.Value) Then

cell.Value = Int(cell.Value / 100) * 100

Else

cell.Value = Left(cell.Value, Len(cell.Value) - 2)

End If

Next cell

End Sub

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

  1. Выделите диапазон ячеек.
  2. Нажмите Alt + F11, чтобы открыть редактор VBA.
  3. Вставьте код в новый модуль (Insert → Module).
  4. Запустите макрос клавишей F5.
Как сохранить файл с макросами?

Файлы с макросами сохраняются в формате .xlsm (а не .xlsx). При первом сохранении выберите Тип файла: Книга Excel с поддержкой макросов (*.xlsm). В противном случае макрос будет утерян.

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

Сравнение методов: какой выбрать?

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

МетодТип данныхСохраняет формулыАвтоматизацияСложность
ЛЕВСИМВ + ТЕКСТЧисла/текстДа (новый столбец)НетНизкая
ОКРУГЛ/ЦЕЛОЕТолько числаДаНетНизкая
Текст по столбцамТекст/числаНетНетСредняя
Макрос VBAТекст/числаНет (заменяет значения)ДаВысокая

Частые ошибки и как их избежать

Даже в простых операциях с Excel легко допустить ошибку. Рассмотрим типичные проблемы и решения:

  • 🚫 Ошибка #ЗНАЧ! при использовании ЛЕВСИМВ: Убедитесь, что данные в текстовом формате. Преобразуйте их через ТЕКСТ или добавьте апостроф перед числом ('12345).
  • 🚫 Некорректное округление отрицательных чисел: Функции ЦЕЛОЕ и ОКРУГЛВНИЗ работают по-разному. Для отрицательных значений используйте =ОКРУГЛВВЕРХ(A1;-2), если нужно округлить к нулю.
  • 🚫 Потеря ведущих нулей: Если после обработки числа типа 0012345 превращаются в 123, предварительно отформатируйте ячейки как текст (Формат ячеек → Текстовый).

Еще одна распространенная ловушка — скрытые символы (пробелы, неразрывные пробелы, символы табуляции). Они увеличивают длину строки, из-за чего ЛЕВСИМВ может обрезать не те символы. Чтобы очистить данные, используйте:

=ПЕЧСИМВ(СЖПРОБЕЛЫ(A1))

FAQ: Ответы на популярные вопросы

Можно ли убрать две последние цифры без формул?

Да, используйте инструмент Текст по столбцам (раздел Данные). Он разобьет содержание ячеек по символам, после чего вы сможете удалить два последних столбца вручную. Подходит для одноразовых задач.

Почему после применения ЛЕВСИМВ результат отображается как дата?

Это происходит, если Excel интерпретирует обрезанный текст как дату (например, "12мар" становится 12-мар). Решение: предварительно отформатируйте ячейки как текст или добавьте апостроф перед формулой: = "'" & ЛЕВСИМВ(A1;ДЛСТР(A1)-2).

Как убрать две последние цифры в Google Таблицах?

В Google Sheets используйте аналогичные функции:

  • =LEFT(A1;LEN(A1)-2) — для текста;
  • =ROUND(A1;-2) — для чисел.

Макросы VBA не поддерживаются, но можно написать скрипт на Google Apps Script.

Можно ли вернуть исходные данные после применения макроса?

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

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

Формула =ЛЕВСИМВ(A1;ДЛСТР(A1)-2) автоматически адаптируется под длину строки. Если в некоторых ячейках меньше 2 символов, она вернет ошибку #ЗНАЧ!. Чтобы избежать этого, добавьте проверку:

=ЕСЛИ(ДЛСТР(A1)>2;ЛЕВСИМВ(A1;ДЛСТР(A1)-2);A1)