AuthorR
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Приходилось ли кому-нибудь решать такую задачу: определить заданную позицию (номер вхождения) заданного символа в текстовой строке внутри ячейки например, имеем ячейка A1 - текст (текст, для примера такой: Первая запятая, первое тире - вторая запятая, второе тире- третья запятая, третье тире-) ячейка B1 - заданный символ, например "запятая" (,) ячейка C1 - заданный номер вхождения, например, 2 Как (если это вообще возможно) получить формулой число-позицию при заданных условиях? Решение для заданных условий (символ - "," номер вхождения - 2) число - 45 Вариант решения "по частям" Ищется первое вхождение заданного символа =ПОИСК(b1;a1) Ищется второе вхождение =ПОИСК(b1;a1;ПОИСК(b1;a1)+1) Очевидно, что существенным недостатком такого решения является то, что: 1) во-первых, формула постоянно "растет"; 2) во вторых нигде не учтенео требование: задать номер вхождения. Некоторые коментарии: Если задан символ, которого нет в просматриваемом тексте, то 0, если задана позиция (например сотая), для существующего символа, но этот символ не встречается в просматриваемом тексте такое число раз, то возвращать номер последнего вхождения. |