Версия для слабовидящих
Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

 

= Мир MS Excel/"Валидация" email почты - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
"Валидация" email почты
Glavatskih Дата: Воскресенье, 24.03.2019, 00:23 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Здравствуйте уважаемые форумчане!
Вопрос думаю не новый, но конкретного ответа не нашел.
Во время работы, часто вручную забиваем электронную почту а также заказчики сами указывают ее, НО, естественно все ошибаются. То точку не поставят, то пробел укажут, то русскими буквами и т.д.
В связи с этим, для корректного указания email почты требуется создать формулу через "проверку данных" (не факт, но думаю что через нее).
Пожалуйста, если можете то прошу помочь т.к. уже 4 часа сижу и не могу ее составить через "ЕСЛИ".
Требуется условие где порядок текста и символов должен соответствовать (по порядку):
1. любые символы, кроме: \ / = - + * , ? & $ # № % ! ; : ^ `~ (и без пробелов)
2. далее - @ (без пробелов)
3. далее - любые символы, кроме: \ / = - + * , ? & $ # № % ! ; : ^ `~ (и без пробелов)
4. далее - точка (.) (без пробелов)
5. далее - любые символы но не более 5 букв, кроме: \ / = - + * , ? & $ # № % ! ; : ^ `~ (и без пробелов)
6. условие, что ве буквы на англ языке (я не знаю, можно ли такое вообще).
Если данное условие соответствует - то ИСТИНа, если нет, то ЛОЖ.

Знаю! что не простая формула, но она ОЧЕНЬ будет полезна всем, кто хочет отфильтровать базу почтовых адресов.
Можно формулу упростить по вашему желанию, но в идеале надо учитывать все условия.

Заранее всех благодарю!!!

 
Ответить
СообщениеЗдравствуйте уважаемые форумчане!
Вопрос думаю не новый, но конкретного ответа не нашел.
Во время работы, часто вручную забиваем электронную почту а также заказчики сами указывают ее, НО, естественно все ошибаются. То точку не поставят, то пробел укажут, то русскими буквами и т.д.
В связи с этим, для корректного указания email почты требуется создать формулу через "проверку данных" (не факт, но думаю что через нее).
Пожалуйста, если можете то прошу помочь т.к. уже 4 часа сижу и не могу ее составить через "ЕСЛИ".
Требуется условие где порядок текста и символов должен соответствовать (по порядку):
1. любые символы, кроме: \ / = - + * , ? & $ # № % ! ; : ^ `~ (и без пробелов)
2. далее - @ (без пробелов)
3. далее - любые символы, кроме: \ / = - + * , ? & $ # № % ! ; : ^ `~ (и без пробелов)
4. далее - точка (.) (без пробелов)
5. далее - любые символы но не более 5 букв, кроме: \ / = - + * , ? & $ # № % ! ; : ^ `~ (и без пробелов)
6. условие, что ве буквы на англ языке (я не знаю, можно ли такое вообще).
Если данное условие соответствует - то ИСТИНа, если нет, то ЛОЖ.

Знаю! что не простая формула, но она ОЧЕНЬ будет полезна всем, кто хочет отфильтровать базу почтовых адресов.
Можно формулу упростить по вашему желанию, но в идеале надо учитывать все условия.

Заранее всех благодарю!!!


Автор - Glavatskih
Дата добавления - 24.03.2019 в 00:23
bmv98rus Дата: Воскресенье, 24.03.2019, 09:24 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4147
Репутация: 772 ±
Замечаний: 0% ±

Excel 2013/2016
Цитата Glavatskih, 24.03.2019 в 00:23, в сообщении № 1 ( писал(а)):
3. далее - любые символы, кроме: \ / = - + * , ? & $ # № % ! ; : ^ `~ (и без пробелов)
4. далее - точка (.) (без пробелов)
5. далее - любые символы но не более 5 букв, кроме: \ / = - + * , ? & $ # № % ! ; : ^ `~ (и без пробелов)

Уверены? домены второго и третьего уровня - не редкость.дефис в домене не запрещен, также как и в имени то есть адрес
V.V_Pupkin@roga-kopyta.zagot.org вполне реальный адрес.


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rus - Воскресенье, 24.03.2019, 09:28
 
Ответить
Сообщение
Цитата Glavatskih, 24.03.2019 в 00:23, в сообщении № 1 ( писал(а)):
3. далее - любые символы, кроме: \ / = - + * , ? & $ # № % ! ; : ^ `~ (и без пробелов)
4. далее - точка (.) (без пробелов)
5. далее - любые символы но не более 5 букв, кроме: \ / = - + * , ? & $ # № % ! ; : ^ `~ (и без пробелов)

Уверены? домены второго и третьего уровня - не редкость.дефис в домене не запрещен, также как и в имени то есть адрес
V.V_Pupkin@roga-kopyta.zagot.org вполне реальный адрес.

Автор - bmv98rus
Дата добавления - 24.03.2019 в 09:24
Glavatskih Дата: Воскресенье, 24.03.2019, 09:29 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
bmv98rus,
Добрый день.
Да, вы правы.
Ну значит не требуются данные условия.
 
Ответить
Сообщениеbmv98rus,
Добрый день.
Да, вы правы.
Ну значит не требуются данные условия.

Автор - Glavatskih
Дата добавления - 24.03.2019 в 09:29
Glavatskih Дата: Воскресенье, 24.03.2019, 09:33 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
bmv98rus,

Дефис надо оставить, а вот остальные символы все же не нужны, т.к. не думаю, что реальные адреса будут использовать #, $ и т.д.
 
Ответить
Сообщениеbmv98rus,

Дефис надо оставить, а вот остальные символы все же не нужны, т.к. не думаю, что реальные адреса будут использовать #, $ и т.д.

Автор - Glavatskih
Дата добавления - 24.03.2019 в 09:33
bmv98rus Дата: Воскресенье, 24.03.2019, 10:18 | Сообщение № 5
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4147
Репутация: 772 ±
Замечаний: 0% ±

Excel 2013/2016
Массивная
=ЕСЛИ(И(ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;"@";""))=1;ДЛСТР(СЖПРОБЕЛЫ(ПРАВСИМВ(ПОДСТАВИТЬ(A2;".";ПОВТОР(" ";99));99)))<6;ЕСЛИОШИБКА(НАЙТИ(".";ПСТР(A2;НАЙТИ("@";A2)+1;99))-1;));ЕСЛИ(СУММ(ЕСЛИОШИБКА(ПРОСМОТР(КОДСИМВ(ПСТР(A2;СТРОКА($A$1:$A$99);1));{0;45;47;64;123};{0;1;0;1;0});));ЕСЛИ(СУММ(ЕСЛИОШИБКА(ПРОСМОТР(КОДСИМВ(ПСТР(СЖПРОБЕЛЫ(ПРАВСИМВ(ПОДСТАВИТЬ(A2;".";ПОВТОР(" ";99));99));СТРОКА($A$1:$A$5);1));{65;123};{1;0});));1;););)

Упростил
=ЕСЛИ(И(ДЛСТР(A3)-ДЛСТР(ПОДСТАВИТЬ(A3;"@";""))=1;ЕЧИСЛО(ПОИСК("@?*.";A3)));ЕСЛИ(СУММ(ЕСЛИОШИБКА(ПРОСМОТР(КОДСИМВ(ПСТР(A3;СТРОКА($A$1:$A$99);1));{0;45;47;64;123};{0;1;0;1;0});));ЕСЛИ(СУММ(ЕСЛИОШИБКА(ПРОСМОТР(КОДСИМВ(ПСТР(СЖПРОБЕЛЫ(ПРАВСИМВ(ПОДСТАВИТЬ(A3;".";ПОВТОР(" ";99));99));СТРОКА($A$1:$A$6);1));{65;123};{1;0});))<6;1;););)


не все предусмотрено.
К сообщению приложен файл: Copy_of_758.xlsx (11.8 Kb)


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rus - Воскресенье, 24.03.2019, 15:56
 
Ответить
СообщениеМассивная
=ЕСЛИ(И(ДЛСТР(A2)-ДЛСТР(ПОДСТАВИТЬ(A2;"@";""))=1;ДЛСТР(СЖПРОБЕЛЫ(ПРАВСИМВ(ПОДСТАВИТЬ(A2;".";ПОВТОР(" ";99));99)))<6;ЕСЛИОШИБКА(НАЙТИ(".";ПСТР(A2;НАЙТИ("@";A2)+1;99))-1;));ЕСЛИ(СУММ(ЕСЛИОШИБКА(ПРОСМОТР(КОДСИМВ(ПСТР(A2;СТРОКА($A$1:$A$99);1));{0;45;47;64;123};{0;1;0;1;0});));ЕСЛИ(СУММ(ЕСЛИОШИБКА(ПРОСМОТР(КОДСИМВ(ПСТР(СЖПРОБЕЛЫ(ПРАВСИМВ(ПОДСТАВИТЬ(A2;".";ПОВТОР(" ";99));99));СТРОКА($A$1:$A$5);1));{65;123};{1;0});));1;););)

Упростил
=ЕСЛИ(И(ДЛСТР(A3)-ДЛСТР(ПОДСТАВИТЬ(A3;"@";""))=1;ЕЧИСЛО(ПОИСК("@?*.";A3)));ЕСЛИ(СУММ(ЕСЛИОШИБКА(ПРОСМОТР(КОДСИМВ(ПСТР(A3;СТРОКА($A$1:$A$99);1));{0;45;47;64;123};{0;1;0;1;0});));ЕСЛИ(СУММ(ЕСЛИОШИБКА(ПРОСМОТР(КОДСИМВ(ПСТР(СЖПРОБЕЛЫ(ПРАВСИМВ(ПОДСТАВИТЬ(A3;".";ПОВТОР(" ";99));99));СТРОКА($A$1:$A$6);1));{65;123};{1;0});))<6;1;););)


не все предусмотрено.

Автор - bmv98rus
Дата добавления - 24.03.2019 в 10:18
Glavatskih Дата: Воскресенье, 24.03.2019, 15:15 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
bmv98rus,
Здравствуйте!
Благодарю за проделанную работу, но что то у меня не "клеиться"((
Файл приложил.

Указанный код не вставляется сюда http://joxi.ru/82QQqP4cwD3D92 Или его в ячейку надо? В ячейке тоже не работает. А2 везде меняю на правильную ячейку.

Пожалуйста, помогите с решением.
К сообщению приложен файл: 5449501.xlsx (14.8 Kb)
 
Ответить
Сообщениеbmv98rus,
Здравствуйте!
Благодарю за проделанную работу, но что то у меня не "клеиться"((
Файл приложил.

Указанный код не вставляется сюда http://joxi.ru/82QQqP4cwD3D92 Или его в ячейку надо? В ячейке тоже не работает. А2 везде меняю на правильную ячейку.

Пожалуйста, помогите с решением.

Автор - Glavatskih
Дата добавления - 24.03.2019 в 15:15
bmv98rus Дата: Воскресенье, 24.03.2019, 15:55 | Сообщение № 7
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4147
Репутация: 772 ±
Замечаний: 0% ±

Excel 2013/2016
Исправил. и обратите внимание это формула массива

=ЕСЛИ(И(ДЛСТР(B2)-ДЛСТР(ПОДСТАВИТЬ(B2;"@";""))=1;ЕЧИСЛО(ПОИСК("@?*.";B2)));ЕСЛИ(СУММ(ЕСЛИОШИБКА(ПРОСМОТР(КОДСИМВ(ПСТР(B2;СТРОКА($A$1:$A$99);1));{0;45;47;48;58;64;123};{1;0;1;0;1;0;1});))=0;ЕСЛИ(СУММ(ЕСЛИОШИБКА(ПРОСМОТР(КОДСИМВ(ПСТР(СЖПРОБЕЛЫ(ПРАВСИМВ(ПОДСТАВИТЬ(B2;".";ПОВТОР(" ";99));99));СТРОКА($A$1:$A$6);1));{0;65;123};{6;1;6});))<6;1;););)
К сообщению приложен файл: 8453579.xlsx (12.8 Kb)


Замечательный Временно просто медведь , процентов на 20.
 
Ответить
СообщениеИсправил. и обратите внимание это формула массива

=ЕСЛИ(И(ДЛСТР(B2)-ДЛСТР(ПОДСТАВИТЬ(B2;"@";""))=1;ЕЧИСЛО(ПОИСК("@?*.";B2)));ЕСЛИ(СУММ(ЕСЛИОШИБКА(ПРОСМОТР(КОДСИМВ(ПСТР(B2;СТРОКА($A$1:$A$99);1));{0;45;47;48;58;64;123};{1;0;1;0;1;0;1});))=0;ЕСЛИ(СУММ(ЕСЛИОШИБКА(ПРОСМОТР(КОДСИМВ(ПСТР(СЖПРОБЕЛЫ(ПРАВСИМВ(ПОДСТАВИТЬ(B2;".";ПОВТОР(" ";99));99));СТРОКА($A$1:$A$6);1));{0;65;123};{6;1;6});))<6;1;););)

Автор - bmv98rus
Дата добавления - 24.03.2019 в 15:55
Glavatskih Дата: Воскресенье, 24.03.2019, 19:07 | Сообщение № 8
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
bmv98rus,
Спасибо вам большое!!!
Вы настоящий профессионал!

Все получилось.
 
Ответить
Сообщениеbmv98rus,
Спасибо вам большое!!!
Вы настоящий профессионал!

Все получилось.

Автор - Glavatskih
Дата добавления - 24.03.2019 в 19:07
  • Страница 1 из 1
  • 1
Поиск:

Рейтинг@Mail.ru Яндекс.Метрика Яндекс цитирования
© 2010-2025 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!