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

Если в ваших данных Excel первые две цифры в ячейках — это лишние префиксы (например, коды стран, служебные номера или артефакты импорта), их удаление не требует ручного редактирования каждой строки. Проблема возникает, когда стандартные функции вроде ЗАМЕНИТЬ() или ПРАВСИМВ() не срабатывают из-за формата ячеек (текст vs число) или скрытых символов. Например, при импорте из или CSV-файлов числа могут отображаться как текст с ведущими нулями, а попытка применить ПРАВСИМВ(LEN(A1)-2) возвращает ошибку #ЗНАЧ!.

В 90% случаев достаточно комбинации ПРАВСИМВ() и ДЛСТР(), но есть нюансы: если исходные данные содержат разное количество символов, формула может обрезать не те цифры. Например, в ячейке 345678 удаление первых двух символов даст 5678, а в 12АБВ34АБВ34. Для смешанных форматов (цифры + буквы) потребуются регулярные выражения или Power Query.

Ниже разобраны все актуальные методы — от базовых до автоматизированных, с учетом типичных ошибок. Если вам нужно удалить префиксы в столбце из 10 000 строк, приоритетными будут способы №3 (специальная вставка) и №5 (Power Query), так как они работают в 5–10 раз быстрее формул.

1. Формула ПРАВСИМВ + ДЛСТР: универсальный метод для чисел и текста

Самый надежный способ удалить первые две цифры — использовать комбинацию функций ПРАВСИМВ() (или RIGHT в английской версии) и ДЛСТР() (аналог LEN). Формула работает и для чисел, и для текста, если они хранятся в правильном формате.

Синтаксис:

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

Где:

  • 🔹 A1 — адрес ячейки с исходными данными;
  • 🔹 ДЛСТР(A1)-2 — вычисляет количество символов, которые нужно оставить (общая длина минус 2 удаляемые цифры).

Пример: если в A1 записано 4210567, формула вернет 10567. Для текста вида 33АБВГ результат будет АБВГ.

⚠️ Внимание: Если формула возвращает #ЗНАЧ!, проверьте формат ячейки. Числа с ведущими нулями (например, 00123) Excel автоматически преобразует в 123. Чтобы сохранить нули, предварительно отформатируйте столбец как Текст (Ctrl+1 → вкладка ЧислоТекстовый).

Для обработки всего столбца:

  1. Введите формулу в первую ячейку столбца-результата (например, B1).
  2. Протяните маркер автозаполнения вниз или дважды кликните по нему.
  3. Скопируйте результаты (Ctrl+C) и вставьте как Значения (ПКМПараметры вставки123).
=ЕСЛИ(ДЛСТР(A1)<=2; ""; ПРАВСИМВ(A1; ДЛСТР(A1)-2))

Это исключит ошибки для коротких записей.-->

2. Функция ЗАМЕНИТЬ: для фиксированных префиксов

Если первые две цифры всегда одинаковые (например, код страны 79 в номерах телефонов), используйте ЗАМЕНИТЬ():

=ЗАМЕНИТЬ(A1; 1; 2; "")

Аргументы:

  • 🔹 1 — позиция первого символа;
  • 🔹 2 — количество удаляемых символов;
  • 🔹 "" — пустая строка для замены.

Преимущество метода: простота и скорость. Недостаток: не подходит для динамических префиксов (например, если первые цифры варьируются от 10 до 99).

Для удаления префиксов с пробелами или разделителями (например, 34-12345) модифицируйте формулу:

=ЗАМЕНИТЬ(A1; 1; 3; "")

Здесь 3 — количество символов для удаления (включая дефис).

3. Специальная вставка: без формул для больших массивов

Если нужно обработать десятки тысяч строк, формулы могут замедлить файл. Альтернатива — специальная вставка с использованием функции ПРАВСИМВ():

  1. Добавьте вспомогательный столбец с формулой =ПРАВСИМВ(A1; ДЛСТР(A1)-2).
  2. Скопируйте результаты (Ctrl+C).
  3. Выделите исходный столбец, кликните ПКМСпециальная вставкаЗначенияОК.
  4. Удалите вспомогательный столбец.

Этот метод в 3–5 раз быстрее, чем протягивание формул, и не нагружает файл.

1. Проверьте формат ячеек (должен быть Текст или Общий).

2. Убедитесь, что в столбце нет пустых ячеек или ошибок.

3. Сохраните резервную копию файла (F12).

4. Если данные импортированы из CSV, обновите связи (ДанныеОбновить все).-->

4. Power Query: автоматизация для повторяющихся задач

Инструмент Power Query (доступен в Excel 2016+ и Office 365) позволяет удалять префиксы без формул и обрабатывать миллионы строк. Алгоритм:

  1. Выделите исходные данные → ДанныеИз таблицы/диапазона (если таблица не создана, Excel предложит ее создать).
  2. В редакторе Power Query выделите столбец → ПреобразоватьИзвлечьПоследние символы.
  3. В поле Число символов введите формулу: =Text.Length([Column1])-2 (замените Column1 на имя вашего столбца).
  4. Нажмите Закрыть и загрузить.

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

Для удаления префиксов с переменной длиной (например, от 1 до 3 цифр) используйте условную логику:

= if Text.Start([Column1], 2) = "34" then Text.End([Column1], Text.Length([Column1])-2) else [Column1]

Эта формула удаляет первые две цифры только если они равны 34.

5. Регулярные выражения (Regex) для сложных шаблонов

Если первые две цифры — часть сложного шаблона (например, 22-AB-1234 или +7(911)1234567), используйте regex через VBA или надстройки вроде ABLEbits. Пример кода для удаления любых двух цифр в начале строки:

Function RemoveFirstTwoDigits(rng As Range) As String

Dim regex As Object

Set regex = CreateObject("VBScript.RegExp")

regex.Pattern = "^\d{2}"

RemoveFirstTwoDigits = regex.Replace(rng.Value, "")

End Function

Как применить:

  1. Нажмите Alt+F11, чтобы открыть редактор VBA.
  2. Вставьте код в модуль (InsertModule).
  3. В Excel используйте функцию как обычно: =RemoveFirstTwoDigits(A1).

Regex подходит для нестандартных форматов, но требует знания синтаксиса. Например, шаблон ^\d{2} удаляет ровно 2 цифры в начале, а ^[0-9]{1,3} — от 1 до 3 цифр.

6. Ошибки и решения: почему не работает удаление

Даже с правильными формулами результат может быть некорректным. Распространенные причины и фиксы:

Проблема Причина Решение
Формула возвращает #ЗНАЧ! Ячейка содержит ошибку или не текст Проверьте формат (Текст) или используйте =ЕСЛИОШИБКА(ПРАВСИМВ(...); "")
Удаляются не те символы В данных есть скрытые пробелы или неразрывные пробелы (CHAR(160)) Очистите данные: =ПЕЧСИМВ(СЖПРОБЕЛЫ(A1))
Результат обрезается не с начала Используется ЛЕВСИМВ() вместо ПРАВСИМВ() Поменяйте функцию на ПРАВСИМВ или проверьте аргументы
Числа преобразуются в даты (например, 1056710.05.67) Формат ячейки-результата — Дата Отформатируйте столбец как Текст или Общий
⚠️ Внимание: Если после удаления первых двух цифр в результатах появляются символы E+ (например, 1.0567E+04), это означает, что Excel интерпретирует данные как число в научной нотации. Чтобы исправить, отформатируйте ячейки как Текст или используйте формулу =ТЕКСТ(ПРАВСИМВ(...); "0").
📊 Какой метод вы используете чаще для удаления префиксов в Excel?
Формулы (ПРАВСИМВ, ЗАМЕНИТЬ)
Специальная вставка
Power Query
VBA или макросы

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

Выбор способа зависит от объема данных, их структуры и вашего уровня владения Excel:

  • 📌 Для разовых задач (до 1 000 строк): формулы ПРАВСИМВ или ЗАМЕНИТЬ.
  • 📌 Для больших массивов (10 000+ строк): Power Query или специальная вставка.
  • 📌 Для сложных шаблонов (смешанные цифры/буквы): regex в VBA.
  • 📌 Для автоматизации (ежемесячные отчеты): макросы или Power Query.

Если данные обновляются регулярно, приоритет — Power Query, так как он позволяет сохранять шаги преобразования и обновлять результаты одним кликом.

Пример комплексного решения для смешанных данных

Если в столбце встречаются и числа (345678), и текст с цифрами (34-АБВ-123), используйте комбинацию функций:

=ЕСЛИ(

ЕЧИСЛО(ЗНАЧЕН(A1));

ПРАВСИМВ(A1; ДЛСТР(A1)-2);

ЕСЛИ(

ДЛСТР(A1)>=2;

ПРАВСИМВ(A1; ДЛСТР(A1)-2);

A1

)

)

Эта формула проверяет, является ли содержимое ячейки числом, и применяет соответствующую логику.

FAQ: Частые вопросы по удалению префиксов

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

Да, с помощью специальной вставки или Power Query. Также можно использовать Найти и заменить (Ctrl+H), если префиксы одинаковые (например, заменить ^79 на пустую строку, предварительно включив регулярные выражения в параметрах поиска).

Почему после удаления цифр остаются пробелы?

Это связано со скрытыми символами (пробелы, табуляции, неразрывные пробелы). Очистите данные функцией =СЖПРОБЕЛЫ(A1) или комбинацией =ПЕЧСИМВ(A1) (удаляет все непечатаемые символы).

Как удалить первые две цифры в Google Sheets?

Формулы идентичны Excel, но используйте английские названия: =RIGHT(A1, LEN(A1)-2). Для регулярных выражений применяйте функцию =REGEXREPLACE(A1; "^\\d{2}"; "").

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

Если вы использовали специальную вставку или Power Query без резервной копии — нет. Всегда сохраняйте оригинал (F12) или работайте с копией листа. Формулы позволяют откатить изменения, так как исходные данные остаются нетронутыми.

Как удалить первые две цифры в столбце с датами (например, 12.05.2023)?

Даты в Excel хранятся как числа, поэтому формулы вроде ПРАВСИМВ не сработают. Преобразуйте даты в текст (=ТЕКСТ(A1; "дд.мм.гггг")), затем удаляйте префиксы. Для извлечения года из даты используйте =ГОД(A1).