Я использую Microsoft Excel 2010. Как я могу выбрать все ячейки, которые не являются адресами электронной почты? Я хочу удалить их и сохранить только те ячейки, которые проверяются на адреса электронной почты.
3 ответа
Проверка адресов электронной почты - это черная дыра. И даже если вы смогли определить действительность этого электронного письма, вы все равно не узнаете, является ли это рабочее электронное письмо или даже электронное письмо этого человека (возможно, они ввели чужой адрес).
Если вы все еще хотите выполнить базовую проверку синтаксиса, вы можете перейти в VBA (может потребоваться включение на вкладке Разработчик на ленте) и установить ссылку на «Регулярные выражения Microsoft VBSript 5.5», создать новый модуль и ввести этот код. (Я не обладаю достаточным опытом в RegEx, поэтому я получил его от StackOverflow, вы можете получить другие RegEx в FightingForALostCause или полное обсуждение в Regular-Expressions):
Public Function CheckEmailSyntax(ByVal Email As String) As Boolean
Dim regex As RegExp
Set regex = New RegExp
regex.Pattern = "^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,6})$"
regex.IgnoreCase = True
CheckEmailSyntax = regex.Test(Email)
End Function
Затем в вашем проекте введите что-то вроде =CheckEmailSyntax(A1)
. Он вернет TRUE
для хороших и FALSE
для плохих. Сортируйте оба столбца по столбцу T/F и удалите ЛОЖНЫЕ. Надеюсь это поможет.
Это сработало для меня:
- Перейти к редактированию на домашней ленте.
- Нажмите Найти и выбрать.
- Введите @ в Найти что:.
- Нажмите Найти все.
- В результатах нажмите Ctrl + A, чтобы выбрать всю группу в результатах.
- Нажмите Копировать на домашней ленте.
- Вставить в новый столбец.
Я бы использовал Find & Select/Data Validation.
- На вкладке Главная перейдите в группу редактирования.
- Выберите «Найти и выбрать»
- Выберите Перейти к спец.
- Выберите Проверка данных
- Выберите Same или All
- Нажмите ОК
Ячейки, которые содержат данные проверки будут выделены.