Получить определенное слово из строки

 

Функция возвращает из текста значение, которое находится на указанной позиции между указанными разделителями. К примеру, в ячейке записан текст "Накладная №34 от 23.06.2011г. на сумму 42000р" и необходимо получить только номер накладной. Или только сумму, или дату.

Вызов команды через стандартный диалог:
Мастер функций-Категория "MulTEx"- ЧастьСтроки
Вызов с панели MulTEx:
Сумма/Поиск/Функции - Текстовые - ЧастьСтроки
Синтаксис:
=ЧастьСтроки(D3;" ";2)


Текст(D3) - указывается ссылка на ячейку с текстом или непосредственно текст, из которого необходимо получить часть текста.
Разделитель(" ") - символ или группа символов, которые считать разделителями текста. Значения между разделителем и будут подсчитываться.
Позиция(2) - порядковый номер части строки между символами(Разделитель), которую необходимо вернуть. Если будет указан номер части строки, превышающий количество возможных в тексте, то будет возвращена последняя часть строки.

Как применять и как работает. На примере строки - "Накладная №34 от 23.06.2011г. на сумму 42000р". В качестве разделителя возьмем пробел. Тогда в работе функции текст "Накладная №34 от 23.06.2011г. на сумму 42000р" будет разбиты на отдельные куски между пробелами:
1. Накладная
2. №34
3. от
4. 23.06.2011г.
5. на
6. сумму
7. 42000р

Каждый номер отдельной части текста - это его позиция в рассматриваемой строке. Теперь будет проще понять принцип работы.
  • Чтобы извлечь номер накладной, функция должна быть записана следующим образом:
    =ЧастьСтроки(D3;" ";2)разделитель пробел(" "), позиция извлекаемого текста - 2. Т.е. если разделить пробелами этот текст на куски, то второй "кусок" и будет номером накладной. Поэтому указываем - 2.
  • Извлечь только дату:
    =ЧастьСтроки(D3;" ";4)
  • Извлечь сумму :
    =ЧастьСтроки(D3;" ";7)

Если текст длинный и необходимо вернуть последний "кусок", то можно просто указать предельное число, например 100: =ЧастьСтроки(D3;" ";100). В этом случае результатом будет значение суммы("42000р"), т.к. это и есть последнее вхождение. Если указать 0 или меньше - функция вернет первое вхождение.

Loading

Добавить комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.