Страницы: 1
RSS
Множественное сравнение функцией ЕСЛИ()
 
Здравствуйте.  
Вопросов по данной функции было много, но по поиску не нашел решения.  
Посмотрите, пожалуйста, имеет ли шанс на жизнь такая формула:  
=ЕСЛИ(НАЙТИ("Динамо";$A3);"Динамо";ЕСЛИ(НАЙТИ("Спартак";$A3);"Спартак";ЕСЛИ(НАЙТИ("Зенит";$A3);"Зенит";"Локомотив")))  
У меня в столбце А при значении, отличном от "Динамо" выдает ошибку. Цель формулы: в столбец В вставлялось название команды из текста в столбце А.
 
В файл не заглядывал, но вместо ЕСЛИ(НАЙТИ("Динамо";$A3)... нужно: ЕСЛИ(ЕЧИСЛО(НАЙТИ("Динамо";$A3))...
 
Спасибо!  
Все работае. Вот только, когда ввел формулу в рабочий файл выдает ошибку:  
"не удается ввести фор-лу, ... больше уровней вложенности, чем допускается текущим форматом". У меня семь условий, когда ввожу шесть помещается, а с последним не складывется? Может формулу другую?
 
Попробуйте такую:  
=ПРОСМОТР(9E+307;ПОИСК({"Динамо";"Спартак";"Зенит"};A2);{"Динамо";"Спартак";"Зенит"})  
Только, если в тексте не будет присутствовать ни одной из перечисленных команд, формула выдаст ошибку и нужно будет писать проверку...
 
Отлично, все работает.  
Единственное, Вы правы, иногда выпадают ошибки (нет данных). Поборол из через ЕСЛИОШИБКА.  
Спасибо!
 
kim, еще ра Вам спасибо.  
Поделитесь, пожалуйста опытом. Функция ПРОСМОТР (ее векторная форма, если я правильно понял), аргумент "искомое значение" равен    
9E+307. Для чего именно 9E+307?
 
9E+307 - максимально возможное число, которое понимает Excel, возвращается из массива число, находящееся на последней позиции.  
Частью формулы: ПОИСК({"Динамо";"Спартак";"Зенит"};A2) формируется примерно такой массив - {2;#ЗНАЧ!;#ЗНАЧ!}  
Здесь число находится только на первой позиции в массиве, соответственно функция ПРОСМОТР() возвращает первую позицию из вектора результатов - {"Динамо";"Спартак";"Зенит"}  
- "Динамо"
 
Понял.  
Спасибо за формулу и за комментарий.
 
{quote}{login=igorss}{date=12.03.2011 01:00}{thema=}{post}Все работает. Вот только, когда ввел формулу в рабочий файл выдает ошибку:  
"не удается ввести фор-лу, ... больше уровней вложенности, чем допускается текущим форматом". У меня семь условий, когда ввожу шесть помещается, а с последним не складывется?{/post}{/quote}  
Первое относится к 2003; ЕСЛИОШИБКА - функция 2007 и выше.... 2007 позволяет, ЕМНИП, до 32 вложений ЕСЛИ; 2010 - 64. Сохраните файл в своем формате (.xlsx), и "поместятся" все ЕСЛИ.    
А если для совместимости необходим .xls, то не будет работать ЕСЛИОШИБКА.  
 
зы. не зависимо от версии  Excel (2003 или 2007) имхо, привложениях ЕСЛИ более пяти, лучше заменять другими функциями (ВЫБОР, ВПР или ПРОСМОТР и т.п.)
 
Да, так и есть. На работе стоит 2007, работаю в режиме совместимости. Но даже в режиме совместимости ЕСЛИОШИБКА работает. А вот дома - 2003 и тут засада.  
Работу домой беру редко, в последнее время (тьфу, тьфу), поэтому на данном этапе пока буду пользоваться ЕСЛИОШИБКА.  
По поводу других функций, спасибо за совет, буду изучать, пробовать.
 
без ЕСЛИОШИБКА можно так:  
=ЕСЛИ(И(ЕОШ(ПОИСК({"Динамо";"Спартак";"Зенит"};A2)));"";ПРОСМОТР(9E+307;ПОИСК({"Динамо";"Спартак";"Зенит"};A2);{"Динамо";"Спартак";"Зенит"}))
 
У меня аналогичная проблема. Только надо сверять 33 слова. И такое решение не подходит ибо говорит что слишком сложная формула.  
В колонке А2 и B2 должны совпадать города тогда в колонку С2 написать совпашийся номер.  
 
ссылочка на файлообменик:  
http://файлообменник.рф/u2z0aekm87k8.html
 
Кому проще? Например, мне нет.  
ЗЫ: Чтобы уменьшить размер файла надо удалять не данные в ячейках, а полностью строки. И нужно показать, что должно получиться.
 
Если в строке "B2" есть совпадение со словом из стобца "А" то в "С" пишется это слово
 
Посмотрите пару вариантов.
 
Отлично. Но в виду того, что я думал, что формула будет немного другая у меня возникает вопрос.    
В таблице в колонке "B" встречается г.Омск в колонке "А" он должен согласоваться с ГЦТ и поэтому в колонке "С" напротив г. Омск должно стоять ГЦТ. Что посоветуете?
 
надо бы вспоминать почаще, что нужно ставить запятые.    
ЗЫ Простите за неграмотность)
 
Меня вполне утсраивает эта формула:  
=ИНДЕКС($A$2:$A$34;ПОИСКПОЗ(ПРОСМОТР(9E+307;НАЙТИ($A$2:$A$34;B12));НАЙТИ($A$2:$A$34;B12);))  
Только нужно, что бы при совпадении Омск-Омск- Писал ГЦТ
 
Тогда, наверное, так.
 
Я немного подоугому сделал, но твой наверно лучше.  
Теперь мне нужно соотнести полученные в "С" слова с цифрами которые указаны в "F". Т.е. в "Е" написано Калачинск в "F" 23. Мне нужно соотнести это 23 ко всем Калачинскам в столбце "C".
 
Это уже следующий вопрос? Какое отношение имеет к теме?  
Создайте новую.
 
Тарксий и Усть-ушимский поправьте.  
 
=ПРОСМОТР(2;1/ПОИСК($A$2:$A$34;B2);$A$2:$A$34)  
 
---------  
12435 - Эх, чуть-чуть.. :))
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
Страницы: 1
Читают тему
Наверх