Menu

ПОДСТАВИТЬ и ЗАМЕНИТЬ в Excel (эксель): замена текста

=ПОДСТАВИТЬ(A2;"-";"") удаляет все дефисы из A2: ПОДСТАВИТЬ меняет текст по содержимому. ЗАМЕНИТЬ меняет по позиции: =ЗАМЕНИТЬ(A2;1;3;"XYZ") перезаписывает первые 3 символа.

Каждая таблица на этой странице живая: измените число или формулу, и она пересчитается.

=ПОДСТАВИТЬ(A2;"-";"") удаляет все дефисы из текста в A2: ПОДСТАВИТЬ (по-английски SUBSTITUTE) находит старый текст и ставит на его место новый, здесь пустой. =ПОДСТАВИТЬ(A2;"-";".") поставила бы вместо каждого дефиса точку. В таблицах формулы записаны по-английски, но их можно вводить и по-русски, с точкой с запятой, как выше.

Удалить дефисы из телефонных номеров
B2
ABC
1PhoneDigits onlyWith dots
2555-201-33445552013344555.201.3344
3555-870-11225558701122555.870.1122
4555-433-90015554339001555.433.9001
Нажмите на ячейку, чтобы увидеть её формулу. Измените число или формулу, и таблица пересчитается.В русском Excel: =ПОДСТАВИТЬ(A2;"-";"")

Результат это текст, даже если остались только цифры. Добавьте -- впереди, =--ПОДСТАВИТЬ(A2;"-";""), если нужно число.

ПОДСТАВИТЬ и ЗАМЕНИТЬ

=SUBSTITUTE(text, old_text, new_text, [instance_num])
=REPLACE(old_text, start_num, num_chars, new_text)

ПОДСТАВИТЬ ищет содержимое: ей неважно, где стоит old_text. ЗАМЕНИТЬ (по-английски REPLACE) ничего не ищет: она отсчитывает символы и перезаписывает num_chars из них начиная с start_num.

По содержимому или по позиции
B2
AB
1TextResult
2Report 2025 finalReport 2026 final
3Report 2025 finalReport 2026 final
4ID-0042SKU-0042
55551234555-1234
Нажмите на ячейку, чтобы увидеть её формулу. Измените число или формулу, и таблица пересчитается.В русском Excel: =ПОДСТАВИТЬ(A2;"2025";"2026")
  • B2 и B3 дают одинаковый результат, но B3 работает только потому, что год начинается с 8-го символа. Если текст изменится, ПОДСТАВИТЬ всё равно его найдёт, а ЗАМЕНИТЬ нет.
  • B4 меняет первые 2 символа, какими бы они ни были, на SKU.
  • B5 использует длину 0: ничего не удаляется, поэтому ЗАМЕНИТЬ вставляет дефис после третьего символа. Это стандартный способ вставить символ в нужную позицию.

Используйте ПОДСТАВИТЬ, когда знаете текст, и ЗАМЕНИТЬ, когда знаете позицию. Для правок по позиции позицию может дать НАЙТИ: =ЗАМЕНИТЬ(A2;НАЙТИ(" ";A2);1;"_") заменяет первый пробел.

Заменить только второе (n-е) вхождение

Четвёртый аргумент ПОДСТАВИТЬ выбирает, какое вхождение изменить. Без него меняются все:

Номер вхождения
B3
AB
1PathResult
22026-03-15-final2026/03/15/final
32026-03/15-final
42026-03-15 final
Нажмите на ячейку, чтобы увидеть её формулу. Измените число или формулу, и таблица пересчитается.В русском Excel: =ПОДСТАВИТЬ(A2;"-";"/";2)

B2 меняет все дефисы. B3 с 2 меняет только второй и даёт 2026-03/15-final; B4 ставит пробел вместо третьего. Номер вхождения больше, чем число совпадений, ничего не меняет.

Переименовать линейку продуктов
B2
AB
1PlanNew name
2Basic monthly
Нажмите на ячейку, чтобы увидеть её формулу. Измените число или формулу, и таблица пересчитается.

Ваша очередь: В B2 формулой замените Basic на Standard в названии тарифа из A2.

Удалить несколько разных символов

ПОДСТАВИТЬ обрабатывает один old_text за вызов. Для нескольких вложите вызовы: каждый работает с результатом вызова внутри него.

Очистить телефонный номер
B2
AB
1PhoneDigits
2(555) 201-33445552013344
3(555) 870-11225558701122
Нажмите на ячейку, чтобы увидеть её формулу. Измените число или формулу, и таблица пересчитается.В русском Excel: =ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;"(";"");")";"");"-";"");" ";"")

Читайте изнутри наружу: удалить (, затем ), затем -, затем пробелы. В Microsoft 365 =РЕГЗАМЕНИТЬ(A2;"[^0-9]";"") удаляет за один вызов все символы, кроме цифр. Для лишних пробелов лучше подходит СЖПРОБЕЛЫ, потому что она оставляет один пробел между словами.

Посчитать вхождения символа или слова

ПОДСТАВИТЬ с пустым текстом удаляет все вхождения, поэтому потерянная длина равна числу удалённых символов. Чтобы посчитать слова, разделите на длину слова:

Сколько запятых, сколько раз «red»
B2
ABC
1TextCommas"red" appears
2red, green, red, blue32
3Red, red, red22
Нажмите на ячейку, чтобы увидеть её формулу. Измените число или формулу, и таблица пересчитается.В русском Excel: =ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;",";""))

C3 возвращает 2, а не 3: ПОДСТАВИТЬ учитывает регистр, поэтому Red не удаляется. Используйте ПОДСТАВИТЬ(СТРОЧН(A3);"red";""), чтобы считать без учёта регистра.

Посчитать теги
B2
AB
1TagsCount
2excel,text,formulas,tips
Нажмите на ячейку, чтобы увидеть её формулу. Измените число или формулу, и таблица пересчитается.

Ваша очередь: Теги в A2 разделены запятыми. В B2 посчитайте, сколько всего тегов (на один больше, чем запятых).

Частая ошибка: ПОДСТАВИТЬ для изменения числа

ПОДСТАВИТЬ работает с текстом числа, и результат получается текстовым. =ПОДСТАВИТЬ(A2;"0";"") для 1050 даёт 15 как текст, а формат вроде $1,050.00 игнорируется, потому что ПОДСТАВИТЬ читает хранимое значение, 1050. Чтобы менять числа, используйте арифметику. Чтобы заменить текст сразу во многих ячейках без формул, воспользуйтесь Главная > Найти и выделить > Заменить (Ctrl+H; на Mac Control+H): там есть параметр «Учитывать регистр», и замена выполняется прямо в ячейках.

Часто задаваемые вопросы

Чем ПОДСТАВИТЬ отличается от ЗАМЕНИТЬ в Excel?

ПОДСТАВИТЬ находит текст по содержимому: =ПОДСТАВИТЬ(A2;"old";"new") меняет каждое old. ЗАМЕНИТЬ работает по позиции: =ЗАМЕНИТЬ(A2;5;3;"new") перезаписывает 3 символа начиная с 5-го, какими бы они ни были.

Как удалить символ из ячейки в Excel?

Замените его пустым текстом: =ПОДСТАВИТЬ(A2;"-";"") удаляет все дефисы. Для нескольких символов вложите вызовы: =ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;"(";"");")";"").

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

Сравните длину до и после его удаления: =ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;",";"")) считает запятые в A2. Для слова разделите на его длину: =(ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;"red";"")))/3.

Учитывает ли ПОДСТАВИТЬ регистр?

Да. =ПОДСТАВИТЬ("Red red";"red";"blue") даёт Red blue. Чтобы не учитывать регистр, сначала переведите текст в строчные буквы, =ПОДСТАВИТЬ(СТРОЧН(A2);"red";"blue"), или используйте «Найти и заменить» (Ctrl+H), которое по умолчанию регистр не учитывает.

Иллюстрация языков программирования Coddy

Учитесь программировать с Coddy

НАЧАТЬ