Страницы: 1
RSS
Обозначение символом наличия/отсутствия данных
 
Доброго времени суток. Прошу помощи в решении следующей задач(к)и: на листе1 имеется список фамилий; на лист2, в столбец ФИО также вписываются фамилии. Задача в следующем: ячейки в столбце "есть/нет" на листе2 должны проверять есть ли такие инициалы на листе1 и подставлять соответствующий символ. Например, если такая фамилия имеется, то символ может быть таким "О", а если нет, то таким "Х". Формула протягивается на весь "есть/нет" столбец. Символы должны появляться по мере заполнения столбца ФИО во втором листе. В противном случае не должно отображаться ничего. Простите, если занимаю Ваше драгоценное время сией примитивной задачей. Не смог объяснить гуглу то, чего мне надо. Пример прикрепил.
 
=ЕСЛИ(ДЛСТР([@ФИО]);ЕСЛИ(ЕЧИСЛО(ПОИСКПОЗ([@ФИО];Таблица1[ФИО];0));"O";"X");"")

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Спасибо, сударь. Весьма признателен.
 
Да уж, у меня длиннее и дольше
=ЕСЛИ(Таблица2[[#Эта строка];[ФИО]]="";"";ЕСЛИОШИБКА(ЕСЛИ(ВПР(Таблица2[[#Эта строка];[ФИО]];Таблица1[ФИО];1;0)=Таблица2[[#Эта строка];[ФИО]];"О";"Х");"Х"))
 
Vik_tor, я тоже себе это как-то через ВПР представлял
 
Ещё до кучи
Код
=ЕСЛИОШИБКА(ЕСЛИ(ИЛИ([@ФИО]=Таблица1[ФИО]);"О";"Х");"")
 
Я прошу прощения, но у меня всплыли дополнительные условия, и я должен усложнить задачу. Может ли требуемая ячейка проверять инициалы в двух списках на двух разных листах?
 
Может.

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Цитата
sigma написал:
в двух списках на двух разных листах
Не понятно на предмет одновременного вхождения или хотя бы одного.
Вариант "хотя бы одного"
Код
=ЕСЛИОШИБКА(ЕСЛИ(ИЛИ([@ФИО]=Таблица1[ФИО];[@ФИО]=Таблица2[ФИО]);"О";"Х");"")
 
Цитата
Pelena написал: Ещё до кучи
Спасибо. Но ваша формула при пустой ячейке ФИО выдает О, а должна оставаться пустой
 
Цитата
JayBhagavan написал: Может.
Как?
 
Код
=ЕСЛИ([@ФИО]="";"";ЕСЛИ(ИЛИ([@ФИО]=Таблица1[ФИО];[@ФИО]=Таблица14[ФИО]);"О";"Х"))
 
Цитата
sigma написал: Как?
Согласно Ваших условий и файла-примера, которых я не вижу.

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
ячейки в столбце "есть/нет" на листе2 должны проверять есть ли такие инициалы на листе1 и листе1 (2) и подставлять соответствующий символ. Например, если такая фамилия имеется, то символ может быть таким "О", а если нет, то таким "Х". Формула протягивается на весь "есть/нет" столбец. Символы должны появляться по мере заполнения столбца ФИО в листе2. В противном случае не должно отображаться ничего. Пример прикрепил.
 
=ЕСЛИ(ДЛСТР([@ФИО]);ЕСЛИ(И(ЕЧИСЛО(ПОИСКПОЗ([@ФИО];Таблица1[ФИО];0));ЕЧИСЛО(ПОИСКПОЗ([@ФИО];Таблица22[ФИО];0)));"O";"X");"")
---
Проще:
=ЕСЛИ(ДЛСТР([@ФИО]);ЕСЛИ(ЕЧИСЛО(ПОИСКПОЗ([@ФИО];Таблица1[ФИО];0)*ПОИСКПОЗ([@ФИО];Таблица22[ФИО];0));"O";"X");"")
Изменено: JayBhagavan - 30.10.2015 18:42:27

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
JayBhagavan, не работает
Изменено: sigma - 01.11.2015 22:24:48
 
Pelena, спасибо. Работает. А если один из диапазонов проверки будет находится в другой закрытой книге. Можно такое реализовать?  
 
sigma, работает согласно Вашему условию И. Возможно Вы имели ввиду ИЛИ? Тогда так:
=ЕСЛИ(ДЛСТР([@ФИО]);ЕСЛИ(ИЛИ(ЕЧИСЛО(ПОИСКПОЗ([@ФИО];Таблица1[ФИО];0));ЕЧИСЛО(ПОИСКПОЗ([@ФИО];Таблица22[ФИО];0)));"O";"X");"")

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
JayBhagavan, большое спасибо за труды. Все работает. Виноват, если неточно выразился. Прошу простить. Но повторяю свой вопрос: возможно ли реализовать подобный механизм, если один из диапазонов проверки будет находиться в другой, закрытой книге?
 
Цитата
sigma написал: А если один из диапазонов проверки будет находится в другой закрытой книге
А проверить?
 
Цитата
Pelena написал:
А проверить?
Проверил. Файлы в приложении. Пример 93 (2) - это файл с Вашим решением. Внешний источник в Книге1. Работает при условии, что Книга1 открыта. Excel 2016. Позже протестирую на 2010.
 
Цитата
sigma написал: Работает при условии, что Книга1 открыта
Вот и ответ на Ваш вопрос
 
=ЕСЛИ([@ФИО]="";"";ЕСЛИ(СУММПРОИЗВ(--([@ФИО]=Таблица1[ФИО]))+ЕЧИСЛО(ПОИСКПОЗ([@ФИО];[Книга1.xlsx]Лист1!$A:$A;0));"О";"Х"))
или
=ЕСЛИ([@ФИО]="";"";ЕСЛИ(ЕЧИСЛО(ПОИСКПОЗ([@ФИО];Таблица1[ФИО];0))+ЕЧИСЛО(ПОИСКПОЗ([@ФИО];[Книга1.xlsx]Лист1!$A:$A;0));"О";"Х"))
Изменено: JayBhagavan - 02.11.2015 10:03:20

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
JayBhagavan, идеально. Не совсем разобрался с принципом действия первого варианта, так что использую второй. Большое спасибо.
Pelena, Большое спасибо за помощь
Страницы: 1
Наверх