|
|
|
Из 4-х работающих формул не могу собрать 1 работающую.
|
|||
|---|---|---|---|
|
#18+
Есть 4 формулы: Код: plaintext 1. 2. 3. По отдельности работают. Вложенные тоже работают, но только если используется 3, а не 4 формулы. Вкладываю 2-ю в 1-ю на место "ошибк", 3-ю в получившееся на место теперешнего "ошибк" и т.д. В итоге получаю ошибку на ЛЕВСИМВ. Кто подскажет, где переборщил? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2007, 18:40:43 |
|
||
|
Из 4-х работающих формул не могу собрать 1 работающую.
|
|||
|---|---|---|---|
|
#18+
Абсолютно уверен. что формулу чожно изменить и значительно оптимизировать, но сейчас об этом речь вести не буду. У вас как мне кажется возникает ошибка из-за того, что формула слишком "глубокая" (не знаю как по научному). ЛЕВСИМВ - это уже восьмая в глубину фцнкция, а функция если () не понимает более 7. Чтобы не использовать 8-й уровень в глубину можно вместо конструкции НЕ(ЕОШИБКА(ВПР(ЛЕВСИМВ(A1;3);"CodePrFr";3))) использовать ЕЧИСЛО(ПОИСКПОЗ(ЛЕВСИМВ(A1;3);ИНДЕКС("CodePrFr";;3))) Это был ответ на вопрос d34Кто подскажет, где переборщил? А вцелом считаю что формулу можно значительно упростить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2007, 00:17:24 |
|
||
|
Из 4-х работающих формул не могу собрать 1 работающую.
|
|||
|---|---|---|---|
|
#18+
Не все понял, в какой последовательности должны появляться "Ошибк" и "Код не найден" но может так пойдет? =ЕСЛИ(И(ЕСЛИ(ЕОШИБКА(ВПР(ЛЕВСИМВ(A1;3);"CodePrAll";3));1;ВПР(ЛЕВСИМВ(A1;3);"CodePrAll";3));ЕСЛИ(И(ИЛИ(D1="FZ";D1="RE");НЕ(ЕОШИБКА(ВПР(ЛЕВСИМВ(A1;3);"CodePrFr";3))));ВПР(ЛЕВСИМВ(A1;3);"CodePrFr";3);1);ЕСЛИ(И(ИЛИ(D1="WM";D1="DR";D1="DW");НЕ(ЕОШИБКА(ВПР(ЛЕВСИМВ(A1;3);"CodePrW";3))));ВПР(ЛЕВСИМВ(A1;3);"CodePrW";3);1));"ошибк";ЕСЛИ(И(ИЛИ(D1="MW";D1="CK";D1="HB";D1="OV";D1="HD");НЕ(ЕОШИБКА(ВПР(ЛЕВСИМВ(A1;3);"CodePrFood";3))));ВПР(ЛЕВСИМВ(A1;3);"CodePrFood";3);"код не найден")) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2007, 08:03:10 |
|
||
|
Из 4-х работающих формул не могу собрать 1 работающую.
|
|||
|---|---|---|---|
|
#18+
DeggasadАбсолютно уверен. что формулу чожно изменить и значительно оптимизировать, но сейчас об этом речь вести не буду. Согласен на все 100%. Но в данный момент не так много времени, а знаний в области EXCEL не много. DeggasadЧтобы не использовать 8-й уровень в глубину можно вместо конструкции НЕ(ЕОШИБКА(ВПР(ЛЕВСИМВ(A1;3);"CodePrFr";3))) использовать ЕЧИСЛО(ПОИСКПОЗ(ЛЕВСИМВ(A1;3);ИНДЕКС("CodePrFr";;3))) Спасибо, помогло. Правда вместо ИНДЕКС("CodePrFr";;3) я поставил просто "CodePrFr" и добавил условие 0 для ПОИСКПОЗ. Просто не понял как ИНДЕКС работает без указания строки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2007, 10:19:01 |
|
||
|
Из 4-х работающих формул не могу собрать 1 работающую.
|
|||
|---|---|---|---|
|
#18+
d34 Спасибо, помогло. Правда вместо ИНДЕКС("CodePrFr";;3) я поставил просто "CodePrFr" и добавил условие 0 для ПОИСКПОЗ. Просто не понял как ИНДЕКС работает без указания строки. извмняюсь, имел ввиду ЕЧИСЛО(ПОИСКПОЗ(ЛЕВСИМВ(A1;3);ИНДЕКС("CodePrFr";;1);0)) ИНДЕКС("CodePrFr";;1) - значит что искать в перво столбце, если столбцов несколько! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.09.2007, 11:52:56 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=34826304&tid=2182213]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
29ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 224ms |
| total: | 326ms |

| 0 / 0 |
