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