Функция ПОДСТАВИТЬ в Excel выполняет динамическую замену определенной части строки на указанное новое значение и возвращает новую строку, содержащую замененную часть текста. Благодаря этой функции можно подставлять значения из другой ячейки. Рассмотрим возможности функции на конкретных примерах в Excel.
Функция ПОДСТАВИТЬ при условии подставляет значение
Пример 1. В результате расчетов, произведенных в некотором приложении, были получены некоторые значения, записанные в таблицу Excel. Некоторые величины рассчитать не удалось, и вместо числового представления была сгенерирована ошибка “NaN”. Необходимо заменить все значения “NaN” на число 0 в соответствующих строках.
Таблица данных:
Для замены и подстановки используем рассматриваемую формулу в качестве массива. Вначале выделим диапазон ячеек C2:C9, затем введем формулу через комбинацию Ctrl+Shift+Enter:
Функция ЧЗНАЧ выполняет преобразование полученных текстовых строк к числовым значениям. Описание аргументов функции ПОДСТАВИТЬ:
- B2:B9 – диапазон ячеек, в которых требуется выполнить замену части строки;
- “NaN” – фрагмент текста, который будет заменен;
- 0 – фрагмент, который будет вставлен на место заменяемого фрагмента.
Для подстановки значений во всех ячейках необходимо нажать Ctrl+Shift+Enter, чтобы функция была выполнена в массиве. Результат вычислений:
Таким же образом функция подставляет значения и другой таблицы при определенном условии.
Автозамена значения в текстовых ячейках с помощью функции ПОДСТАВИТЬ
Пример 2. Провайдер домашнего интернета хранит данные о своих абонентах в таблице Excel. Предположим, улица Садовая была переименована в Никольскую. Необходимо быстро произвести замену названия улицы в строке данных об адресе проживания каждого клиента.
Таблица данных:
Для выполнения заданного условия используем формулу:
Примечание: в данном примере ПОДСТАВИТЬ также используется в массиве Ctrl+Shift+Enter.
В результате получим:
Формула с макросом регулярного выражения и функция ПОДСТАВИТЬ
Пример 3. При составлении таблицы из предыдущего примера была допущена ошибка: все номера домов на улице Никольская должны быть записаны как «№№-Н», где №№ — номер дома. Как быстро исправить ошибку?
В данном случае для поиска числовых значений номера дома воспользоваться встроенными функциями не удастся. Рациональнее всего использовать регулярные выражения. По умолчанию, в Excel отсутствует функция для работы с регулярными выражениями, однако ее можно добавить следующим способом:
- Открыть редактор макросов (Ctrl+F11).
- Вставить исходный код функции (приведен ниже).
- Выполнить данный макрос и закрыть редактор кода.
Код функции:
Public Function RegExpExtract(Text As String, Pattern As String, Optional Item As Integer = 1) As String
On Error GoTo ErrHandl
Set regex = CreateObject("VBScript.RegExp")
regex.Pattern = Pattern
regex.Global = True
If regex.Test(Text) Then
Set matches = regex.Execute(Text)
RegExpExtract = matches.Item(Item - 1)
Exit Function
End If
ErrHandl:
RegExpExtract = CVErr(xlErrValue)
End Function
Для того, чтобы воспользоваться этой формулой, в любой ячейке необходимо ввести следующее:
= RegExpExtract(текст;регулярное_выражение;[номер_вхождения])
Регулярные выражения могут быть различными. Например, для выделения любого символа из текстовой строки в качестве второго аргумента необходимо передать значение «w», а цифры – «d».
Для решения задачи данного Примера 3 используем следующую запись:
Логика вычислений:
- Функция ЕСЛИОШИБКА используется для возврата исходной строки текста (B2), поскольку результатом выполнения функции RegExpExtract(B2;»Никольская») будет код ошибки #ЗНАЧ!, если ей не удалось найти хотя бы одно вхождение подстроки «Никольская» в строке B2.
- Если результат выполнения сравнения значений RegExpExtract(B2;»Никольская»)=»Никольская» является ИСТИНА, будет выполнена функция ПОДСТАВИТЬ(B2;RegExpExtract(B2;»d+»);RegExpExtract(B2;»d+»)&»-Н»), где:
- a. B2 – исходный текст, содержащий полный адрес;
- b. RegExpExtract(B2;»d+») – формула, выделяющая номер дома из строки с полным адресом;
- c. RegExpExtract(B2;»d+»)&»-Н» – новый номер, содержащий исходное значение и символы «-Н».
Результат вычислений:
Данный способ может показаться громоздким, однако он весьма удобен для работы с таблицами, содержащими большое количество данных.
Особенности использования функции ПОДСТАВИТЬ в Excel
Функция ПОДСТАВИТЬ имеет следующую синтаксическую запись:
= ПОДСТАВИТЬ(текст;стар_текст;нов_текст;[номер_вхождения])
Описание аргументов:
- текст – обязательный аргумент, характеризующий текстовую строку, в которой необходимо выполнить замену части текста. Может быть задан как текстовая строка («некоторый текст») или ссылка на ячейку, которая содержит текстовые данные.
- стар_текст – часть текстовой строки, принимаемой в качестве первого аргумента данной функции, которую требуется заменить. Аргумент обязателен для заполнения.
- нов_текст – обязательный для заполнения аргумент, содержащий текстовые данные, которые будут вставлены на место заменяемой части строки.
- [номер_вхождения] – числовое значение, характеризующее номер вхождения старого текста, который требуется заменить на фрагмент нового текста. Возможные варианты записи:
- Аргумент явно не указан. Функция ПОДСТАВИТЬ определит все части текстовой строки, соответствующие фрагменту текста стар_текст, и выполнит их замену на нов_текст;
- В качестве аргумента передано числовое значение. Функция ПОДСТАВИТЬ заменит только указанное вхождение. Отсчет начинается слева направо, число 1 соответствует первому вхождению. Например, функция =ПОДСТАВИТЬ(«текст №1, №2, №3»;«текст»;«новый»;1) вернет значение «новый_текст №1, №2, №3».
Примечания:
- Аргумент [номер_вхождения] должен быть задан из диапазон целых положительных чисел от 1 до n, где n определяется максимально допустимой длиной строки, содержащейся в объекте данных (например, в ячейке).
- Если в текстовой строке, представленной в качестве аргумента текст не содержится фрагмент, переданный в качестве аргумента стар_текст, функция ПОДСТАВИТЬ вернет строку текст без изменений.
- Если число вхождений заменяемого фрагмента в обрабатываемой строке меньше, чем числовое значение, переданное в качестве аргумент [номер_вхождения], функция ПОДСТАВИТЬ вернет текстовую строку в исходном виде. Например, аргументы функции («а 1 а 2 а 3»;«а»;«б»;4) вернут строку «а 1 а 2 а 3».
- Рассматриваемая функция чувствительная к регистру, то есть строки «Слово» и «слово» не являются тождественными.
- Для решения аналогичных задач по замене части символов текстовой строки можно использовать функцию ЗАМЕНИТЬ. Однако, в отличие от функции ПОДСТАВИТЬ, для ее использования необходимо явно указывать позицию начального символа для замены, а также количество символов, которые необходимо заменить. Функция автоматически выполняет поиск указанной части строки и производит ее замену, поэтому в большинстве случаев предлагает более удобный функционал для работы с текстовыми строками.
Замена одного текста на другой внутри заданной текстовой строки — весьма частая ситуация при работе с данными в Excel. Реализовать подобное можно двумя функциями: ПОДСТАВИТЬ (SUBSTITUTE) и ЗАМЕНИТЬ (REPLACE). Эти функции во многом похожи, но имеют и несколько принципиальных отличий и плюсов-минусов в разных ситуациях. Давайте подробно и на примерах разберем сначала первую из них.
Её синтаксис таков:
=ПОДСТАВИТЬ(Ячейка; Старый_текст; Новый_текст; Номер_вхождения)
где
- Ячейка — ячейка с текстом, где производится замена
- Старый_текст — текст, который надо найти и заменить
- Новый_текст — текст, на который заменяем
- Номер_вхождения — необязательный аргумент, задающий номер вхождения старого текста на замену
Обратите внимание, что:
- Если не указывать последний аргумент Номер_вхождения, то будут заменены все вхождения старого текста (в ячейке С1 — обе «Маши» заменены на «Олю»).
- Если нужно заменить только определенное вхождение, то его номер задается в последнем аргументе (в ячейке С2 только вторая «Маша» заменена на «Олю»).
- Эта функция различает строчные и прописные буквы (в ячейке С3 замена не сработала, т.к. «маша» написана с маленькой буквы)
Давайте разберем пару примеров использования функции ПОДСТАВИТЬ для наглядности.
Замена или удаление неразрывных пробелов
При выгрузке данных из 1С, копировании информации с вебстраниц или из документов Word часто приходится иметь дело с неразрывным пробелом — спецсимволом, неотличимым от обычного пробела, но с другим внутренним кодом (160 вместо 32). Его не получается удалить стандартными средствами — заменой через диалоговое окно Ctrl+H или функцией удаления лишних пробелов СЖПРОБЕЛЫ (TRIM). Поможет наша функция ПОДСТАВИТЬ, которой можно заменить неразрывный пробел на обычный или на пустую текстовую строку, т.е. удалить:
Подсчет количества слов в ячейке
Если нужно подсчитать количество слов в ячейке, то можно применить простую идею: слов на единицу больше, чем пробелов (при условии, что нет лишних пробелов). Соответственно, формула для расчета будет простой:
Если предполагается, что в ячейке могут находиться и лишние пробелы, то формула будет чуть посложнее, но идея — та же.
Извлечение первых двух слов
Если нужно вытащить из ячейки только первые два слова (например ФИ из ФИО), то можно применить формулу:
У нее простая логика:
- заменяем второй пробел на какой-нибудь необычный символ (например #) функцией ПОДСТАВИТЬ (SUBSTITUTE)
- ищем позицию символа # функцией НАЙТИ (FIND)
- вырезаем все символы от начала строки до позиции # функцией ЛЕВСИМВ (LEFT)
Ссылки по теме
- Зачистка текста от лишних пробелов, непечатаемых символов и т.д.
- Как подсчитать количество слов в ячейке
- Преобразование чисел-как-текст в полноценные числа
Поиск или замена текста и чисел на листе
Смотрите также54600: Здравствуйте, нужна формула нравится в названии xls. В этой исправлятьЕсли нельзя -: Да , все в объекте данных громоздким, однако он 1) As String место заменяемого фрагмента. соответствуют результаты «барин» столбцов, чтобы видеть рядом с полемНайти всеФормулы Например, если ввестиПримечание:45600 для замены части функции «сумм»?
таблице в некоторых зачем тогда эта работает, спасибо (например, в ячейке). весьма удобен дляOn Error GoTo
-
Для подстановки значений во и «барон» все данные.Формат, каждого экземпляра условия,,г*д
-
Мы стараемся как можно45600
-
текста в ячейке.Я пробовал запускать клетках указаны формулы тема?
-
Юрий МЕсли в текстовой строке, работы с таблицами, ErrHandl всех ячейках необходимо
-
-
* (звездочка)Данныеи нажмите кнопку которые вы ищетезначения, то будут найдены оперативнее обеспечивать вас34600Например тот же макрос
одного из двухВообще, попробуйте перед: Можно ведь на представленной в качестве содержащими большое количество
-
Set regex = нажать Ctrl+Shift+Enter, чтобыЛюбое количество символовСведения о продажахОчистить указываются и щелкнуви
-
слова «год» и актуальными справочными материаламиТо есть чтобыЯчейка А1: aaa вручную в этом видов: выгрузкой установить для
месте менять (без аргумента текст не данных. CreateObject(«VBScript.RegExp») функция была выполненаПример: условию «*-восток»Квартал 1, 2008 г.. нужное вхождение впримечания «город». на вашем языке. все последние 2
-
-
Ячейка B1: bbb документе повторно -1. « Excel свои разделители формул): Ctrl+H
-
содержится фрагмент, переданныйФункция ПОДСТАВИТЬ имеет следующуюregex.Pattern = Pattern в массиве. Результат соответствуют результаты «северо-восток»Квартал 1, 2011 г.Для поиска текста или списке сделает ячейкидоступны только наВопросительный знак заменяет один
-
Эта страница переведена цифры стали «0».Ячейка C1: laskjdlasjdljasldjxxxjaskldjyyysajdlskajxxxjdklsajdyyy нет результата.200?’200px’:»+(this.scrollHeight+5)+’px’);»>=RC[-1]*RC[-4] целой и дробнойВ верхнем поле в качестве аргумента синтаксическую запись:
-
regex.Global = True вычислений: и «юго-восток»Формула чисел на листе active. Можно сортировать вкладке любой знак. Например, автоматически, поэтому ееЗаранее спасибо. sajdsklajdyyysadljasljdxxx yyysadjsajd yyy
Пробовал снова через» (перемножить две части: Файл -Параметры ~* стар_текст, функция ПОДСТАВИТЬ= ПОДСТАВИТЬ(текст;стар_текст;нов_текст;[номер_вхождения])If regex.Test(Text) ThenТаким же образом функция~ (тильда), за которойОписание (результат) также можно использовать результатыПоиск если ввести текст может содержать
-
TimSha xxxsadwqjehjqwejk xxxwqeoyqoeqwioyyyy ctrl+F найти и колонки, чтобы получить -Дополнительно -снять галку
-
В нижнем точка. вернет строку текстОписание аргументов:Set matches = подставляет значения и следует ?, *Результат
-
-
функции ПОИСК иНайти; на вкладке «г?д неточности и грамматические: И что конкретноНужно в ячейке заменить все «=» значение третьей) с «Использовать системные
romul1981 без изменений.текст – обязательный аргумент, regex.Execute(Text) другой таблицы при или ~=ПОДСТАВИТЬ(A2; «продажах»; «ценах») НАЙТИ.все, щелкнув заголовокЗаменить, то будут найдены ошибки. Для нас у вас не C1 все xxx на «=» -2. «Код200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММ(R[-82]C:R[-1]C)» (поле разделители» и установить
-
: Уважаемые профессионалы!Если число вхождений заменяемого
-
характеризующий текстовую строку,RegExpExtract = matches.Item(Item определенном условии.Вопросительный знак, звездочку илиЗамена «ценах» на «продажах»В этой статье описаны
столбца.» доступны только слова «гад», «гид» важно, чтобы эта получается: округлить до заменить на значение результат корректный, все «итого» в подвале) свои.Подскажите пожалуйста как фрагмента в обрабатываемой в которой необходимо — 1)
-
тильду («Сведения о ценах») синтаксис формулы иЧтобы заменить текст илиформулы и «год». статья была вам сотен, найти 2 ячейки А1, все формулы, включая итоги,После сохранения таблицыromul1981 массово но желательно
строке меньше, чем выполнить замену частиExit FunctionПример 2. Провайдер домашнегоПример: условию «фг06~?»Сведения о ценах
использование числа, введите знаки.
-
-
Совет: полезна. Просим вас последних/правых(=ПРАВСИМВ) символа ,заменить yyy заменить на сразу определяются. 1С (ввиду ее: Почему не подходит без использования макросов
Советы
-
числовое значение, переданное текста. Может бытьEnd If интернета хранит данные соответствует результат «фг06?»=ПОДСТАВИТЬ(A3; «1»; «2»; 1)ПОДСТАВИТЬ для замены вДля поиска данных с Звездочки, знак вопроса и уделить пару секунд их (=ПОДСТАВИТЬ) на значение ячейки b1Кто-то сталкивался с ограниченных возможностей) дополнительно найти-заменить: изменить ячейки, а в качестве аргумент задан как текстоваяErrHandl: о своих абонентахФункция ПОДСТАВИТЬ в ExcelЗамена первого экземпляра «1»в Microsoft Excel. поле
-
учетом регистра установите символы тильда (~) и сообщить, помогла 00.Пробовал делать через
support.office.com
ПОДСТАВИТЬ (функция ПОДСТАВИТЬ)
такой ситуацией? Почему открывает получившийся файлКонечный файл представляет именно заменить знак [номер_вхождения], функция ПОДСТАВИТЬ
Описание
строка («некоторый текст»)RegExpExtract = CVErr(xlErrValue) в таблице Excel. выполняет динамическую замену на «2» («КварталПодставляет значение аргумента «нов_текст»Заменить на флажок можно найти в ли она вам,ps Файл-пример в
Синтаксис
replace+find, но не
иксель ругается с через OLE, дорисовывает
-
из себя «условно» точки — «.» вернет текстовую строку или ссылка наEnd Function
-
Предположим, улица Садовая определенной части строки
-
2, 2008 г.») вместо значения аргумента(или оставьте это
-
Учитывать регистр данных листа перед с помощью кнопок реальной структуре и разобрался как искать ошибкой «#ИМЯ?» ? в его модуль три группы вкладок: на запятую «,», в исходном виде. ячейку, которая содержитДля того, чтобы воспользоваться
Пример
была переименована в на указанное новоеКвартал 2, 2008 г. «стар_текст» в текстовой поле пустым, чтобы. их с тильда внизу страницы. Для форматах данных - после того какp.s. то, что макрос и выполняет1. Выгрузка (неизменяемая
учитывая что длина |
||
Например, аргументы функции |
||
текстовые данные. |
||
этой формулой, в |
||
Никольскую. Необходимо быстро |
значение и возвращает |
=ПОДСТАВИТЬ(A4; «1»; «2»; 3) |
строке. Функция ПОДСТАВИТЬ |
ничем не заменятьДля поиска ячеек, содержащих |
в поле |
удобства также приводим |
ваш шанс приблизить уже один раз «сумм» написано маленькими |
этот макрос: |
таблица — куда |
каждой ячейки разная. («а 1 астар_текст – часть текстовой |
любой ячейке необходимо |
support.office.com
Использование подстановочных знаков в запросах поиска
произвести замену названия новую строку, содержащуюЗамена третьего экземпляра «1» используется, когда нужно знаки), а затем только символы, введенныеНайти ссылку на оригинал решение… нашел искомое значение. буквами, не влияетКод200?’200px’:»+(this.scrollHeight+5)+’px’);»>Sub RenewEveryFormula() копируются исходные данные)Это нужно для 2 а 3»;«а»;«б»;4) строки, принимаемой в ввести следующее: улицы в строке замененную часть текста. на «2» («Квартал заменить определенный текст нажмите кнопку
в поле. Например, чтобы найти (на английском языке).DonPedro3xПросьба кто может
на ситуацию (пробовалCells.Replace What:=»»=»», Replacement:=»»=»»,2. Формулы которые обработки файла который вернут строку «а качестве первого аргумента= RegExpExtract(текст;регулярное_выражение;[номер_вхождения])
данных об адресе |
Благодаря этой функции |
1, 2012 г.») |
в текстовой строке; |
Функции поиска и замены |
: Да я прошу |
приводят в порядок выгружает из баззы 1 а 2 |
данной функции, которуюРегулярные выражения могут быть |
support.office.com
Примеры функции ПОДСТАВИТЬ для замены текста в ячейке Excel
Квартал 1, 2012 г. функция ЗАМЕНИТЬ используется,или, установите флажок «?», вы введите в Excel используются прощения забыл пример желательно формулой дляp.s.s. написать «sum»:=xlByRows, MatchCase:=False, SearchFormat:=False, выгрузку данных цифры но а 3».
Функция ПОДСТАВИТЬ при условии подставляет значение
требуется заменить. Аргумент различными. Например, дляТаблица данных: из другой ячейки.Примечание: когда нужно заменитьНайти всеЯчейка целиком~? для поиска в вложить решение данной задачи. тоже не канает. ReplaceFormat:=False
3. Отображение данных,
выгружает их сРассматриваемая функция чувствительная к обязателен для заполнения. выделения любого символаДля выполнения заданного условия Рассмотрим возможности функцииМы стараемся как
любой текст начиная..как критерии поиска. книге необходимой информации,
- glingПрикладываю файл сИспользуйте теги: дляEnd Sub»;
- ВПРы, формулы для точкой, а значит
- регистру, то естьнов_текст – обязательный для из текстовой строки
используем формулу: на конкретных примерах можно оперативнее обеспечивать с определенной позиции.Примечание:Если вы хотите найти
Нажмите кнопку например определенного числа: Есть такой вариант. примером как есть
кода кнопка #,
Автозамена значения в текстовых ячейках с помощью функции ПОДСТАВИТЬ
Задача макроса - конечных пользователей. их потом нельзя строки «Слово» и заполнения аргумент, содержащий в качестве второгоПримечание: в данном примере в Excel. вас актуальными справочнымиПОДСТАВИТЬ(текст;стар_текст;нов_текст;[номер_вхождения]) Если поле
текст или числа
Параметры или текстовой строки.
200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЛЕВСИМВ(A2;ДЛСТР(A2)-2)&»00″ и как должно для формул кнопка
найти и заменить
Формула с макросом регулярного выражения и функция ПОДСТАВИТЬ
Вторые листы - исправлять. К сожалению «слово» не являются текстовые данные, которые аргумента необходимо передать ПОДСТАВИТЬ также используетсяПример 1. В результате материалами на вашемАргументы функции ПОДСТАВИТЬ описаныЗаменить на
с определенным форматированием,, чтобы определить дополнительныеНа вкладкеМВТ быть. fx во всём файле которые приводят в вариант Найти-Заменить не тождественными. будут вставлены на значение «w», а
- в массиве Ctrl+Shift+Enter.
- расчетов, произведенных в языке. Эта страница
- ниже.недоступно, откройте вкладку
нажмите кнопку
условия поиска приГлавная: Или такReplace.xlsxPelena
символ "=" на порядок - "очень"
подходит по рядуДля решения аналогичных задач
место заменяемой части
цифры – «d».
В результате получим:
некотором приложении, были переведена автоматически, поэтому
ТекстЗаменить
Формат
необходимости:
в группе
200?'200px':''+(this.scrollHeight+5)+'px');">=ОКРУГЛВНИЗ(A2;-2)
snipe
: Проверьте формулу на «=» (макрос я скрыты. Попытка их причин.
по замене части
строки.Для решения задачи данногоПример 3. При составлении получены некоторые значения, ее текст может Обязательный. Текст или ссылка.и выберите нужные
Для поиска данных наРедактированиеYouGreed
: обязательно макросом -
- предмет русских/английских букв записал через встроенный отобразить обычно ниСпасибо!!! символов текстовой строки[номер_вхождения] – числовое значение, Примера 3 используем таблицы из предыдущего записанные в таблицу содержать неточности и на ячейку, содержащую
- При необходимости поиск можно параметры в диалоговом листе или вонажмите кнопку
- : DonPedro3x, Так попробуйте) формулы уже несумм должно быть
- механизм икселя, вручную к чему хорошемуJayBhagavan можно использовать функцию
- характеризующее номер вхождения следующую запись: примера была допущена Excel. Некоторые величины
грамматические ошибки. Для
текст, в котором отменить, нажав клавишу окне всей книге выберитеНайти и выделить200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЗНАЧЕН(ЛЕВСИМВ(A2;3)&»00″)
Особенности использования функции ПОДСТАВИТЬ в Excel
в цене? русскими, а С
через ctrl+F заменив
не приводила -
- : ПОДСТАВИТЬ() ЗАМЕНИТЬ. Однако, в старого текста, которыйЛогика вычислений: ошибка: все номера рассчитать не удалось, нас важно, чтобы подставляются знаки. ESC.Найти формат
- в поле.TimShaAlexM в диапазоне - «=» на «=»).
- ибо много рукvikttur отличие от функции требуется заменить наФункция ЕСЛИОШИБКА используется для домов на улице
- и вместо числового эта статья былаСтар_текстЧтобы заменить одно или.Искать
- Выполните одно из указанных: И что -: Код =ПОДСТАВИТЬ(ПОДСТАВИТЬ(C2;»xxx»;A2);»yyy»;B2) английскойДо выполнения макроса использует эту таблицу,: Инструмент
- ПОДСТАВИТЬ, для ее фрагмент нового текста. возврата исходной строки Никольская должны быть представления была сгенерирована вам полезна. Просим Обязательный. Заменяемый текст. все совпадения сСовет:вариант ниже действий.
ни одной попытки
- sed1108Udik все клетки с не все изНайти/Заменить использования необходимо явно Возможные варианты записи: текста (B2), поскольку записаны как «№№-Н»,
- ошибка “NaN”. Необходимо вас уделить паруНов_текст введенным текстом, нажмите Чтобы найти ячейки, точнона листеЧтобы найти текст или так и не
- : Я же написал:: А ячейки с формулами содержали в них прямые. ВПосле этого копировать указывать позицию начальногоАргумент явно не указан. результатом выполнения функции где №№ - заменить все значения секунд и сообщить, Обязательный. Текст, на который кнопку соответствующие определенному формату,
- или числа, выберите пункт сделали?! «макросом или желательно формулами в случайном
- себе эти формулы итоге приходится каждый пустую ячейку, выделить символа для замены, Функция ПОДСТАВИТЬ определит RegExpExtract(B2;»Никольская») будет код номер дома. Как “NaN” на число помогла ли она заменяется «стар_текст».Заменить можно удалить всев книгеНайтиИ мне лениво формулой». порядке располагаются? А в виде текстовых раз помимо выгрузки диапазон, а также количество
exceltable.com
формула замены символа «, в ячейке
все части текстовой ошибки #ЗНАЧ!, если быстро исправить ошибку?
0 в соответствующих вам, с помощьюНомер_вхожденияили условия в поле
..
было… ;)Спасибо за ваш
то можно было значений (=RC). После — еще и
Правка-Спецвставка-Сложить-ОК символов, которые необходимо строки, соответствующие фрагменту ей не удалось
В данном случае для строках.
кнопок внизу страницы.
planetaexcel.ru
Замена символа в ячейках формулой
Необязательный. Определяет, какое вхождениеЗаменить все
НайтиДля поиска данных вЧтобы найти и заменить200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЦЕЛОЕ(A2/100)*100 вариант ответа. бы на FormulaLocal выполнения макроса иксель искать и заменятьСергей
заменить. Функция автоматически текста стар_текст, и найти хотя бы поиска числовых значенийТаблица данных: Для удобства также фрагмента «стар_текст» нужно., а затем выбрать строках или столбцах текст или числа,
DonPedro3x
Спасибо большое, не записать.
хватается за голову отдельные (НО НЕ: vikttur, там тайна
выполняет поиск указанной выполнит их замену одно вхождение подстроки номера дома воспользоваться
Для замены и подстановки приводим ссылку на
заменить фрагментом «нов_текст».Microsoft Excel сохраняет параметры ячейку с нужным выберите в поле выберите пункт
: Все способы работают!) знал что всеNic70y
и начинает видеть ВСЕ) столбцы.JayBhagavan части строки и на нов_текст; «Никольская» в строке встроенными функциями не используем рассматриваемую формулу оригинал (на английском Если этот аргумент форматирования, которые можно форматированием в качествеПросматриватьЗаменитьСпасибо большое. Особенно
так просто. Почему-то: Вы ее сюда эти формулы именноПоверьте — делать: Цитатаromul1981 написал: К производит ее замену,В качестве аргумента передано B2. удастся. Рациональнее всего
в качестве массива. языке) . определен, то заменяется
определить. Если вы примера. Щелкните стрелкувариант
. TimSha — гениально не смог нагуглить
скопипастили? как формулы. И это несколько раз
сожалению вариант Найти-Заменить поэтому в большинстве числовое значение. Функция
Если результат выполнения сравнения использовать регулярные выражения. Вначале выделим диапазонИспользование подстановочных знаков в только заданное вхождение еще раз выполнить рядом с кнопкойпо строкамВ поле просто. эту формулу.у меня все всё это прекрасно в день крайне не подходит по случаев предлагает более ПОДСТАВИТЬ заменит только
значений RegExpExtract(B2;»Никольская»)=»Никольская» является По умолчанию, в ячеек C2:C9, затем условии сравнения для
фрагмента «стар_текст». В поиск на листеФорматилиНайтиPelenaDonPedro3x
норм отрабатывает. работает и достаточно геморойно!!
planetaexcel.ru
Замена символа «=» на «=» для обновления формулы (Макросы/Sub)
ряду причин удобный функционал для
указанное вхождение. Отсчет ИСТИНА, будет выполнена Excel отсутствует функция введем формулу через фильтров текст, а противном случае все данные и не, выберите пункт
по столбцамвведите текст или
: Такого ещё варианта: Добрый день, форумчане.покажите файл -
быстро, здесь проблемvikttur
vikttur работы с текстовыми начинается слева направо, функция ПОДСТАВИТЬ(B2;RegExpExtract(B2;»d+»);RegExpExtract(B2;»d+»)&»-Н»), где: для работы с комбинацию Ctrl+Shift+Enter: при поиске и вхождения фрагмента «стар_текст»
удается найти символы,
Выбрать формат из ячейки.
числа, которые нужно не было
Вопрос такой:
сотрите все данные нет.: Но я вам: Я написал, как строками. число 1 соответствуетa. B2 – исходный регулярными выражениями, однакоФункция ЧЗНАЧ выполняет преобразование
замене содержимого. в тексте заменяются которые вы знаете, а затем щелкнитеДля поиска данных с искать, или щелкните200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ОКРВНИЗ(A2;100)Есть столбец в нафиг, оставьте толькоПроблемы есть с не покажу, потому игнорировать одну причину.ximki-vinki первому вхождению. Например, текст, содержащий полный
ее можно добавить полученных текстовых строкДополнительные сведения об использовании фрагментом «нов_текст». содержал сведения, может ячейку с форматированием, конкретными свойствами выберите стрелку в полеAlexM 990000 строк с типаформулы, может чего формулами итогов (Код200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СУММ(R[-82]C:R[-1]C). что у васThe_Prist: Нужно заменить символ
функция =ПОДСТАВИТЬ(«текст №1, адрес; следующим способом: к числовым значениям. подстановочных знаков с
Скопируйте образец данных из потребоваться снимите нужные которое требуется найти. в полеНайти: Почти как у кодами такого типа:
и прояснится Указанный макрос подмены паспортов нету… Так: Когда будут озвучены
«, на . №2, №3»;«текст»;«новый»;1) вернетb. RegExpExtract(B2;»d+») – формула,Открыть редактор макросов (Ctrl+F11). Описание аргументов функции
помощью средства поиска следующей таблицы и
параметры форматирования изВыполните одно из указанныхОбласть поискаи нажмите кнопку
TimSha34857IWI
знака равенства не получается? Догадки играть эти причины -Но при использовании
значение «новый_текст №1, выделяющая номер домаВставить исходный код функции ПОДСТАВИТЬ: и замены в вставьте их в предыдущего поиска. В
ниже действий.вариант последнего поиска в
200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЦЕЛОЕ(A2%)/1%54646
: заставляет иксель правильно будем? тогда, может и функций ПОДСТАВИТЬ и
№2, №3». из строки с (приведен ниже).B2:B9 – диапазон ячеек, Excel: Поиск или ячейку A1 нового диалоговом окнеЧтобы найти текст илиформулы
excelworld.ru
Заменить определенные символы в ячейке
списке.Udik45675juravl
отреагировать. Вместо этого
JayBhagavan
решение оптимальное найдется.
ЗАМЕНИТЬ, выдает ошибку,Примечания: полным адресом;
Выполнить данный макрос и в которых требуется замена текста и листа Excel. ЧтобыПоиск и замена числа, нажмите кнопку
,В условиях поиска можно: Мои 5 копеек45698, попробуйте добавить в иксель в этих
: Поручите этот геморрой А пока звучит т.к. используются вАргумент [номер_вхождения] должен быть
c. RegExpExtract(B2;»d+»)&»-Н» – новый закрыть редактор кода. выполнить замену части чисел на листе.
отобразить результаты формул,
перейдите на вкладкуНайти всезначения использовать подстановочные знаки,
200?’200px’:»+(this.scrollHeight+5)+’px’);»>34678
конец макроса изменение клетках оставляет ошибку макросу. как бред. Самый
этих функциях задан из диапазон
номер, содержащий исходноеКод функции: строки;Используйте выделите их и
CyberForum.ru
Заменить последние два символа в ячейке (Формулы/Formulas)
Поискили
или
например вопросительный знак=ОТБР(A2;-2)Надо чтобы около
формата ячейки на
«#ИМЯ?». «Показать этапы
juravl
оптимальный инструмент не
Bema
целых положительных чисел значение и символыPublic Function RegExpExtract(Text As“NaN” – фрагмент текста,
Чтобы найти
нажмите клавишу F2,
и нажмите кнопку
Найти далее
примечания
(?) и звездочкуSerge_007 него был столбец
«общий» (ранее я
вычисления» по этой: Всем привет! подходит, а почему: Пример можете показать? от 1 до «-Н». String, Pattern As который будет заменен;
? (вопросительный знак) а затем —Параметры..
(*).: До кучи: с кодами такого так понял был
функции — скриншотЗадача такая: 1С - не говорят.Цитатаromul1981
Сергей n, где nРезультат вычислений:
String, Optional Item0 – фрагмент, который
Любой символ (один)
клавишу ВВОД. При, чтобы открыть параметрыСовет:Примечание:Звездочка используется для поиска
200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЗАМЕНИТЬ(A2;4;2;)*10000% типа:
"текст").
во вложении. Похоже, сохраняет таблицу на
написал: а значит: надо так =ПОДСТАВИТЬ(A1;»»»»;».») определяется максимально допустимой
Данный способ может показаться As Integer = будет вставлен на
Пример: условию "бар?н"
необходимости измените ширину форматирования. Щелкните стрелку При нажатии кнопки
любой строки знаков.Код200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ПСТР(A2;1;3)&»00″Код200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЛЕВБ(A2;3)*100
43800
sed1108
ему что-то не винт в формате
их потом нельзя
ximki-vinki
excelworld.ru
длиной строки, содержащейся
Если нужно сцепить формулу и текст или показать работающую формулу, то не так все просто.
Например: в B1 формула «=A1+A2».
Хотим видеть в C1:
«A1+A2=5 шт.»
Вариант, который предложил undestroyer, для сцепки в формуле1 формулы2 и другого текста работает, если:
-
формулу2 вписывать в формулу1 вручную (применимо, если формул одна-две);
-
ячейке задать текстовый формат и вписать туда формулу2, но саму работающую формулу2 разместить в другой ячейке.
Но если нужно отображать не одну — несколько (десятков) формул?
В этом случае нужно писать макрос. Но есть и другой вариант, проще.
Макрофункции.
Такие функции непосредственно на листе Excel не работают, для работы макрофункций использование макросов должно быть разрешено.
В Excel есть еще один неплохой инструмент – именованные диапазоны. Пробуем?
Выделить ячейку для вставки формулы со сцепкой (у нас это C1). Нажать Ctrl+F3 – откроется окно для работы с именами. Вписать имя (пусть будет «хочу_формулу»), в поле Диапазон вписать формулу:
=ПОЛУЧИТЬ.ЯЧЕЙКУ(6;Лист1!B1)
(ссылку можно не писать вручную – клик на ячейке, но не забыть убрать закрепление ссылки (знаки $), ведь формулу хотим размножить, чтобы видеть и другие работающие формулы)
ОК-Закрыть – имеем именованный диапазон.
Если в C1 вписать простую формулу =хочу_формулу, в ней отобразится формула, работающая в ячейке B1.
Чтобы сцепить формулу и ее результат, применим сцепление (конкатенацию) текста, предварительно удалив знак «=» из формулы:
=ПОДСТАВИТЬ(хочу_формулу;"=";;1)&"="&B1&" шт."
ПОДСТАВИТЬ(где;что_менять;на_что_менять; вхождение). Единичка в функции — заменить только первый знак «=», без этого параметра из формулы будут удалены все «=».
Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше
В этой статье описаны синтаксис формулы и использование ПОДСТАВИТЬ в Microsoft Excel.
Описание
Подставляет значение аргумента «нов_текст» вместо значения аргумента «стар_текст» в текстовой строке. Функция ПОДСТАВИТЬ используется, когда нужно заменить определенный текст в текстовой строке; функция ЗАМЕНИТЬ используется, когда нужно заменить любой текст начиная с определенной позиции.
Синтаксис
ПОДСТАВИТЬ(текст;стар_текст;нов_текст;[номер_вхождения])
Аргументы функции ПОДСТАВИТЬ описаны ниже.
-
Текст Обязательный. Текст или ссылка на ячейку, содержащую текст, в котором подставляются знаки.
-
Стар_текст Обязательный. Заменяемый текст.
-
Нов_текст Обязательный. Текст, на который заменяется «стар_текст».
-
Номер_вхождения Необязательный. Определяет, какое вхождение фрагмента «стар_текст» нужно заменить фрагментом «нов_текст». Если этот аргумент определен, то заменяется только заданное вхождение фрагмента «стар_текст». В противном случае все вхождения фрагмента «стар_текст» в тексте заменяются фрагментом «нов_текст».
Пример
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Данные |
||
---|---|---|
Сведения о продажах |
< |
|
Квартал 1, 2008 г. |
< |
|
Квартал 1, 2011 г. |
< |
|
Формула |
Описание (результат) |
Результат |
=ПОДСТАВИТЬ(A2; «продажах»; «ценах») |
Замена «ценах» на «продажах» («Сведения о ценах») |
Сведения о ценах |
=ПОДСТАВИТЬ(A3; «1»; «2»; 1) |
Замена первого экземпляра «1» на «2» («Квартал 2, 2008 г.») |
Квартал 2, 2008 г. |
=ПОДСТАВИТЬ(A4; «1»; «2»; 3) |
Замена третьего экземпляра «1» на «2» («Квартал 1, 2012 г.») |
Квартал 1, 2012 г. |
См. также
Функция ЗАМЕНИТЬ, ЗАМЕНИТЬБ
Функция СЖПРОБЕЛЫ