|
|
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
Есть некий список, например аааа аааа аааа аааа ббб ббб аааа аааа в нем "аааа" идет не подряд, а "ббб" - подряд. Нужна формула (поумнее, чем то, что придумал я, ибо моя неудобна в силу разных причин), которая бы возвращала ИСТИНА или ЛОЖЬ в зависимости от выполнения условия. Файл-пример сейчас прикреплю... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2010, 16:28 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
DaniilK, =ПРОСМОТР(2;1/(C8:C47=C2);СТРОКА(C8:C47)-7)-ПОИСКПОЗ(C2;C8:C47;0)+1=СЧЁТЕСЛИ(C8:C47;C2) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2010, 17:01 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
интересное решение, спасибо ) но как оно работает?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2010, 17:22 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
DaniilK, Работу просмотра по поиску последнего значения подсмотрел в формуле у Александра Д (Саши с Планеты). Просмотр в данном случае ищет в массиве последний адрес значения(номер строки массива), равного С2, а поискпоз - первый адрес этого значения. Дальше я думаю понятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.01.2010, 17:43 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
DaniilK, ЕНД(ПОИСКПОЗ(C2;ИНДЕКС($C$8:$C$47;ПОИСКПОЗ(C2&" ";$C$8:$C$47)):$C$47)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2010, 13:08 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
_slan_, не работает :( Формула массива: =МАКС((C8:C47=C2)*СТРОКА(C8:C47)-7)-ПОИСКПОЗ(C2;C8:C47;0)+1=СЧЁТЕСЛИ(C8:C47;C2) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2010, 11:10 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
формула намного красивее, но она перестает работать (несоответствие выделено красным), если добавить пробелов..., например, в начало... почему перестает работать формула? см. файл ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2010, 12:48 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
_slan_DaniilK, ЕНД(ПОИСКПОЗ(C2;ИНДЕКС($C$8:$C$47;ПОИСКПОЗ(C2&" ";$C$8:$C$47)):$C$47)) тогда уже так: =НЕ(ЕНД(ПОИСКПОЗ(0;--(СМЕЩ(C7;ПОИСКПОЗ(C2;C8:C47;0);;СЧЁТЕСЛИ(C8:C47;C2))=C2);0))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2010, 15:20 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
Вернее не так. Раз уж перешли на формулы массива, то вот несколько: =ЕНД(ПОИСКПОЗ(0;--(СМЕЩ(C7;ПОИСКПОЗ(C2;C8:C47;0);;СЧЁТЕСЛИ(C8:C47;C2))=C2);0)) =СУММ(--(СМЕЩ(C7;ПОИСКПОЗ(C2;C8:C47;0);;СЧЁТЕСЛИ(C8:C47;C2))=C2);0)=СЧЁТЕСЛИ(C8:C47;C2) =И((ИНДЕКС(C8:C47;ПОИСКПОЗ(C2;C8:C47;0)):ИНДЕКС(C8:C47;ПОИСКПОЗ(C2;C8:C47;0)+СЧЁТЕСЛИ(C8:C47;C2)-1))=C2) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2010, 15:40 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
тогда так: C$2=ИНДЕКС(ИНДЕКС(C$8:C$47;ПОИСКПОЗ(C$2;C$8:C$47;0)):C$47;СЧЁТЕСЛИ(C$8:C$47;C$2)) формула немассива :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2010, 09:23 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
_slan_, Такой вариант тоже ошибочен. Найденное значение может равняться искомому даже при "разорванной цепочке" этого значения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2010, 09:45 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
лил еще чуть проще: =C$2=ИНДЕКС(C$8:C$47;ПОИСКПОЗ(C$2;C$8:C$47;0)+СЧЁТЕСЛИ(C$8:C$47;C$2)-1) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2010, 10:53 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
В последнем примере _slan_'а в строку 14 (седьмое значение) пишем "шайбы" - и формула _slan_'а, и формула автора ошибочнр считают, что "шайбы" в неразрывном диапазоне. Просмотрел предыдущие варианты. Из формул массива лучшая моя :) =МАКС((C8:C47=C2)*СТРОКА(C8:C47)-7)-ПОИСКПОЗ(C2;C8:C47;0)+1=СЧЁТЕСЛИ(C8:C47;C2) Это не от "скромности" - у DV68 одна длинная, а две летучие (функция СМЕЩ). Но со всех показанных формула DV68 с ПРОСМОТР вне конкуренции - и красивая, и не длинная, и, главное, не нужно применять как формулу массива: =ПРОСМОТР(2;1/(C8:C47=C2);СТРОКА(C8:C47)-7)-ПОИСКПОЗ(C2;C8:C47;0)+1=СЧЁТЕСЛИ(C8:C47;C2) Но это мое личное эгоистическое мнение :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2010, 11:11 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
vikttur_slan_, Такой вариант тоже ошибочен. Найденное значение может равняться искомому даже при "разорванной цепочке" этого значения. да, согласен.. тогда идем чуть дальше: =СЧЁТЕСЛИ(C$8:ИНДЕКС(C$8:C$47;ПОИСКПОЗ(C$2;C$8:C$47;0)+СЧЁТЕСЛИ(C$8:C$47;C$2)-1);C$2)=СЧЁТЕСЛИ(C$8:C$47;C$2) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2010, 11:57 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
я, пожалуй, пришел к той же первоначальной формуле DV68 :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2010, 11:59 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
ну и ну... неужели без СЧЁТЕСЛИ и ПОИСКПОЗ не обойтись??... ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2010, 12:49 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
DaniilK, вот еще вариант: =СЧЁТЕСЛИ(ИНДЕКС(C$8:C$48;ПОИСКПОЗ(C$2;C$8:C$48;0)+СЧЁТЕСЛИ(C$8:C$47;C$2)):C$48;C$2)=0 теоретически счётесли нало исключить, поискпоз эффективнее, но запись получается громоздкой но что-то надо использовать, не из пальца же брать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2010, 13:32 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
DaniilKну и ну... неужели без СЧЁТЕСЛИ и ПОИСКПОЗ не обойтись??... ) Можно, если захватить ячейку ниже диапазона (массив): =СУММ(ЕСЛИ((C9:C48=C2)*СТРОКА(C2:C41)-(C8:C47=C2)*СТРОКА(C1:C40)<0;1))=1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2010, 14:32 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
а тогда так (массив): =СУММ(--(ЗНАЧЕН((--(C8:C47=C2))&(--(C9:C48=C2)))=10))<2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2010, 01:00 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
DV68=СУММ(--(ЗНАЧЕН((--(C8:C47=C2))&(--(C9:C48=C2)))=10))<2 Обалдеть! :) Причесал: =СУММ(--(--((C8:C47=C2)*1&(C9:C48=C2)*1)=10))<2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2010, 02:21 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
=СУММ(ПОИСКПОЗ({1;2};1/(D8:D47=D2);{0;1})*{-1;1})=СЧЁТЕСЛИ(D8:D48;D2)-1 =И(D2=СМЕЩ(D7;ПОИСКПОЗ(D2;D8:D47;0);;СЧЁТЕСЛИ(D8:D47;D2))) =СУММ((D8:D47=D2)*(D9:D48<>D2))=1 В том порядке, в каком приходили на ум. Подробно не проверял, т к поздно. Лично мне вторая больше всего нравится, хоть она и самая плохая по сути. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2010, 04:06 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
Саша, который не тот, что уже за Подробно не проверял, т к поздно. Опечатка- "т к уже утро" :) А мне первая понравилась (ожидал от тебя похожего). Ну и, естественно, последняя – отшлифованные мысли, претендует на звание самой короткой :) DaniilK, пора призы раздавать :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2010, 13:09 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
вот без счетесли и не массив: =ЕОШИБКА(ПОИСКПОЗ(C$2;ИНДЕКС(C$8:C$47;ПОИСКПОЗ(C$2&" ";ИНДЕКС(C$8:C$47;ПОИСКПОЗ(C$2;C$8:C$47;0)):C$47)+ПОИСКПОЗ(C$2;C$8:C$47;0)):C$47;0)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2010, 14:37 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
viktturА мне первая понравилась (ожидал от тебя похожего). Ну и, естественно, последняя – отшлифованные мысли, претендует на звание самой короткой :) DaniilK, пора призы раздавать :) Согласен. Если кому не нравится массив, можно и СУММПРОИЗВ использовать: =СУММПРОИЗВ((D8:D47=D2)*(D9:D48<>D2))=1 А моя без заданных значений в массиве выдает ИСТИНА( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2010, 16:46 |
|
||
|
Подряд ли идет слово в массиве - нуна формула! )
|
|||
|---|---|---|---|
|
#18+
DV68[quot vikttur]А моя без заданных значений в массиве выдает ИСТИНА( Большинство формул в таком случае показывают #Н/Д. А последние выдают ЛОЖЬ, что тоже не соответствует задаче. Можно добавить проверку: ЕСЛИ(СЧЁТЕСЛИ(C8:C47;C2);... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2010, 01:27 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=36430757&tid=2178558]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
176ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
64ms |
get tp. blocked users: |
1ms |
| others: | 244ms |
| total: | 527ms |

| 0 / 0 |
