Новости:

Прикрепить к сообщению можно только файлы xls, gif, jpg, rar, zip,7z, bas, frm, cls, doc размером до 150 Кб.

Главное меню

Информация после определенного знака

Автор 0mega, 14.07.2013, 20:49

« назад - далее »

0mega

Доброго времени суток
2003
sub no

столбец  содержит произвольный набор цифр, букв и пробелов
В соседнем столбце надо вывести только ту информацию, которая начинается с указанного в ячейка А2 (или более позднего) символа

напр.
Надо оставить инфо, которая начинается с "у" или  "ф", "ч", "ш",  "щ" ..."я"

Атмосфера -фера
Барабан
Кенгуру ---- уру
пешеход --- шеход
карапуз ---- уз
щука ------- щука



Шпец Докапыч

Вот формула:
C6: {=ПСТР(B6;ПОИСКПОЗ(1=1;КОДСИМВ(ПСТР(B6&$A$2;СТРОКА(СМЕЩ($A$1;;;ДЛСТР(B6)+1;1));1))>=КОДСИМВ($A$2);0);99)}
Знания недостаточно, необходимо применение. Желания недостаточно, необходимо действие. (с) Брюс Ли

0mega


0mega

 Шпец Докапыч,
есть уточняющий вопрос:
Почему  вы ищите позицию "1=1"  ?  Ведь у нуля код (47) меньше чем у единички (48) ?

ShAM

#4
При чем тут 0 и 1? 1=1 взято для получения зачения ИСТИНА.
Вот эта часть: КОДСИМВ(ПСТР(B6&$A$2;СТРОКА(СМЕЩ($A$1;;;ДЛСТР(B6)+1;1));1))>=КОДСИМВ($A$2) дает массив из ИСТИНА и ЛОЖЬ. ПОИСКПОЗ "ловит" первую ИСТИНУ и, начиная с ее позиции и все, что правее получаем при помощи ПСТР.
ЗЫ: Надеюсь понятно объяснил. :)

_Boroda_

Еще вариант
=ПСТР(B6;МИН(ЕСЛИ(ПСТР(B6&A$2;СТРОКА(A$1:A$99);1)>=A$2;СТРОКА(A$1:A$99)));99)
Скажи мне, кудесник, любимец ба'гов...



Яндекс-деньги: 41001632713405
Webmoney: R289877159277; Z102172301748; E177867141995

Шпец Докапыч

Я тут подумал, в моём решении КОДСИМВ() можно убрать, - формула останется рабочей.
Знания недостаточно, необходимо применение. Желания недостаточно, необходимо действие. (с) Брюс Ли

_Boroda_

Ну да. И еще как-то не логично смотрится сначала СМЕЩ($A$1;;;ДЛСТР(B6)+1;1), а потом просто 99.
прекрасно работает вот так:
=ПСТР(B6;ПОИСКПОЗ(1=1;ПСТР(B6&$A$2;СТРОКА(A$1:A$99);1)>=$A$2;);99)
Скажи мне, кудесник, любимец ба'гов...



Яндекс-деньги: 41001632713405
Webmoney: R289877159277; Z102172301748; E177867141995

0mega

Александр, а какой будет формула, если указывать не ячейку А2, а конкретное значение "л" ?

_Boroda_

=ПСТР(B6;ПОИСКПОЗ(1=1;ПСТР(B6&"л";СТРОКА(A$1:A$99);1)>="л";);99)[code]
[code]=ПСТР(B6;МИН(ЕСЛИ(ПСТР(B6&"л";СТРОКА(A$1:A$99);1)>="л";СТРОКА(A$1:A$99)));99)
Скажи мне, кудесник, любимец ба'гов...



Яндекс-деньги: 41001632713405
Webmoney: R289877159277; Z102172301748; E177867141995

0mega