Страницы: 1
RSS
Сообщить об ошибке, если введенные данные содержат не разрешенные символы
 
Прошу помочь.
В ячейку В1 вводят некий ID, который может состоять лишь из символов из столбца Е. Там их не больше нескольких десятков. Нужно чтобы, если в В1 есть символы не входящие в список разрешенных, выдавалось бы сообщение об ошибке ввода. Решение должно быть без макросов. Предполагается, что надо в В2 сделать формулу, которая бы выдавала бы истина или ложь на проверку присутствия в В1 не разрешенных символов и по инструменту "Проверка данных" выдавало бы сообщение об ошибке. Своих мозгов, к сожалению не хватает.
Или предложите более другое решение ;)
Если автоматизировать бардак, то получится автоматизированный бардак.
 
=СУММ(--ЕЧИСЛО(ПОИСК($E$2:$E$7;B2)))=ДЛСТР(B2)
 
Вставил в В2, выдало сообщение о циклической ссылке и ноль
И в список входят не только числа, но и символы
Изменено: wowick - 05.05.2018 17:58:22
Если автоматизировать бардак, то получится автоматизированный бардак.
 
А нужно
Цитата
wowick написал: по инструменту "Проверка данных"
Не я это писал :)
 
Цитата
vikttur написал:
А нужно
Т.е. вы сделали проверку ячейки В2? Ну пусть так. Но если ввести например 11, то проверка условия уже не дает это сделать. Я нигде не писал, что могут вводится только лишь по одному символы из разрешенных. Так что логика формулы не правильная.
Если автоматизировать бардак, то получится автоматизированный бардак.
 
см. вложение
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Ігор Гончаренко,может я че-то не то делаю, но я не могу ввести 11 в В2.
Если автоматизировать бардак, то получится автоматизированный бардак.
 
не смотрел что у Ігор Гончаренко,  в проверку данных
=SUMPRODUCT(LEN(B1)-LEN(SUBSTITUTE(B1;$E$2:$E$7;"")))=LEN(B1)
или даже просто
=SUM(LEN(B1)-LEN(SUBSTITUTE(B1;$E$2:$E$7;"")))=LEN(B1)
Изменено: БМВ - 06.05.2018 09:58:05
По вопросам из тем форума, личку не читаю.
 
Да, логика моей формулы хромоногая. Так правильно:
=СЧЁТ(ПОИСКПОЗ(ПСТР(B3;СТРОКА($1:$20);1);""&$E$2:$E$7;))=ДЛСТР(B3)
СТРОКА($1:$20) - здесь 20 - максимально возможное число символов
 
vikttur, Виктор, я правильно понял, что это не в проверку данных ибо массивная?  Ну и СТРОКА($1:$20); на код из 20 не более
По вопросам из тем форума, личку не читаю.
 
Проверка данных понимает )
 
Цитата
vikttur написал:
Проверка данных понимает
хм, Surprise, то есть и у меня SUMPRODUCT на SUM можно заменить. Получается в проверке всегда масcивная автоматом? И это касается и УФ.
Изменено: БМВ - 06.05.2018 09:26:16
По вопросам из тем форума, личку не читаю.
 
да
Страницы: 1
Наверх