Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
Проверка с помощью УФ нескольких масок на содержание в строке
 
Доброго времени суток, Планетяне!
Тема, вроде популярная, но я нашёл только вот это решение.

Мне нужно настроить правило УФ, которое бы подсвечивало ячейку, если в ней содержится хотя бы одно значение из заданных.
Пока остановился на вот такой штуке =(ЕОШ(ПОИСК("петя";$A2))+ЕОШ(ПОИСК("витя";$A2)))<2 — то есть мы проверяем формулу ПОИСК на ошибку, если есть, то значение не найдено, если есть у всех, то сумма этих проверок = сумме условий, а всё, что меньше - значит хоть одно выполнилось и не вызвало ошибку. Можно как-то проще сделать или быстрее/правильнее?

Основная проблема при подходе "в лоб" = ИЛИ(ПОИСК("петя";$A2);ПОИСК("витя";$A2)), это то, что при отсутвии значения как раз будет ошибка #ЗНАЧ и всё условие НЕ ВЫПОЛНЕНО…
Screenshot_1.png (15.54 КБ)
Изменено: Jack Famous - 16 Сен 2019 14:01:16
«Тот, кто несет фонарь, спотыкается чаще, чем тот, кто идет следом.»
Иоганн Пауль Фридрих Рихтер
 
Не, основная проблема - нет примера :)
 
Приветствую
Код
=СЧЁТ(ПОИСК($C$1:$C$2;A1))
Каждому For свой Next
 
vikttur, добавил)

buchlotnik, а если список не на листе, а нужно прописать внутри УФ? Плюс обойтись без массивных формул (если они вообще допустимы в УФ)?
Изменено: Jack Famous - 16 Сен 2019 13:43:59
«Тот, кто несет фонарь, спотыкается чаще, чем тот, кто идет следом.»
Иоганн Пауль Фридрих Рихтер
 
Э, аккуратнее!!! "Витя" не может быть ошибкой! :)

=ПОИСК("витя";$A2&"витя")<ДЛСТР($A2)
Петю добавить.
Если значений много, закинуть их в именованный диапазон
 
vikttur,  :D
а для нескольких условий как будет? Просто, как по мне, то тогда уж =ДЛСТР(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ячейка;"вася";"");"петя";"")))<ДЛСТР(ячейка)
За идею спасибо - прикреплять то, что ищем, чтобы избежать ошибки, это интересно  ;)
Изменено: Jack Famous - 16 Сен 2019 13:55:32
«Тот, кто несет фонарь, спотыкается чаще, чем тот, кто идет следом.»
Иоганн Пауль Фридрих Рихтер
 
основная проблема в том,
что при наличии в ячейке слова витязь
формула посчитатет, что там есть витя и подсветит ее
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Ігор Гончаренко, я в курсе работы функции и проблемы в этом нет. Это можно решить добавлением пробелов или ещё какими-нибудь способами…
Если вы про название темы, то да — тут вы правы.

Предлагаю новое: Проверка с помощью УФ нескольких масок на содержание в строке (менять или не менять оставляю на выбор модераторов)
Изменено: Jack Famous - 16 Сен 2019 14:02:43
«Тот, кто несет фонарь, спотыкается чаще, чем тот, кто идет следом.»
Иоганн Пауль Фридрих Рихтер
 
Цитата
Jack Famous написал:
если они вообще допустимы в УФ
наоборот, все формулы в УФ - массивные, хоть и вводятся обычным enter
Цитата
Jack Famous написал:
список не на листе
засунул в имена
Код
=СЧЁТ(ПОИСК(список;A2))
Каждому For свой Next
 
buchlotnik, вот это очень интересный подход — при увеличении списка масок было бы очень удобно. Спасибо!  ;)
Плюс весь функционал формулы ПОИСК при это сохранён  :idea:
Изменено: Jack Famous - 16 Сен 2019 14:04:36
«Тот, кто несет фонарь, спотыкается чаще, чем тот, кто идет следом.»
Иоганн Пауль Фридрих Рихтер
 
Совсем недавно была такая же тема.
 
Цитата
Ігор Гончаренко написал: что при наличии в ячейке слова витязь формула посчитатет, что там есть витя и подсветит ее
Тоже неплохо звучит - витязь Витя... Я бы принял это за правильное исключение и не считал ошибкой :)
 
Юрий М, не видел или не подумал, что тоже самое. Если решите объединить, то пожалуйста, а можно просто перекрёстной ссылкой обойтись…
«Тот, кто несет фонарь, спотыкается чаще, чем тот, кто идет следом.»
Иоганн Пауль Фридрих Рихтер
 
Джек, я не про объединение )) Может там что полезное найдётся.
Не могу найти...
 
Юрий М, ну, если увидите, то кидайте  :)
«Тот, кто несет фонарь, спотыкается чаще, чем тот, кто идет следом.»
Иоганн Пауль Фридрих Рихтер
Страницы: 1
Читают тему (гостей: 1)
Наверх