KutoolsforOffice — Одно решение — пять мощных инструментов.Меньше усилий — больше результата.

Быстро Извлечь адреса электронной почты из текстовой строки в Excel — Полное руководство

АвторСяоянДата изменения

При работе с импортированными данными или текстовыми строками, содержащими разнородную информацию в Excel, вам может понадобиться быстро и точно извлечь адреса электронной почты. Независимо от того, имеете ли вы дело со списком адресов электронной почты, перемешанных с другим текстом, или вам нужно извлечь их из большого массива данных, существует несколько эффективных способов решить эту задачу. В данном руководстве описаны различные методы извлечения адресов электронной почты из текстовых строк — от использования «Быстрого заполнения» и надстройки Kutools для Excel до формул, пользовательских функций и кода VBA. Каждый подход имеет свои преимущества в зависимости от ваших задач и сложности исходных данных.

Снимок экрана с различными текстовыми строками в Excel для извлечения адресов электронной почты

Извлечь адреса электронной почты из текстовой строки с помощью «Быстрого заполнения»

Функция «Быстрое заполнение» в Excel — это быстрый и эффективный способ автоматически форматировать или извлекать данные на основе заданных вами шаблонов. В этом разделе мы покажем, как использовать «Быстрое заполнение» для извлечения адресов электронной почты из столбца со смешанными данными. Этот метод особенно полезен при работе со списками, содержащими разнотипный текст, когда нужно выделить только адреса электронной почты.

  1. Click on the first cell in the adjacent column (e.g., B2), where you want the email address to appear.
  2. Вручную введите Адрес электронной почты из соответствующей строки в столбце A, а затем нажмите клавишу Enter.
    Например, если в ячейке A2 содержится «ana varela@gmail.com», введите « ana varela@gmail.com » в ячейку B2.
    Снимок экрана, показывающий ручной ввод адреса электронной почты в Excel до использования функции «Быстрое заполнение»
  3. Оставайтесь в ячейке B3 и нажмите «Ctrl + E», чтобы активировать «Быстрое заполнение».
    Excel автоматически заполнит остальную часть столбца B значениями Извлечь адреса электронной почты.
    GIF-изображение адресов электронной почты, извлеченных с помощью функции «Быстрое заполнение» в Excel
Примечания:
  • Функция «Быстрое заполнение» доступна в Excel 2013 и более поздних версиях. Если вы используете Excel 2010 или более раннюю версию, эта функция может отсутствовать.
  • Убедитесь, что ячейки, к которым вы применяете «Быстрое заполнение», отформатированы как «Текст», — это поможет избежать нежелательных проблем с форматированием.

Извлечение Извлечь адреса электронной почты из текстовой строки одним щелчком с помощью Kutools

Когда речь заходит об извлечении адресов электронной почты из набора данных, функция «Извлечь адреса электронной почты» из Kutools для Excel становится мощной альтернативой «Быстрому заполнению» Excel. В то время как «Быстрое заполнение» требует ручного распознавания шаблонов, Kutools для Excel автоматизирует весь процесс одним щелчком мыши, обеспечивая идеальное решение для быстрой и эффективной обработки больших объемов данных. Этот инструмент не только упрощает извлечение, но и гарантирует высокую точность и скорость — особенно при работе со сложными или несогласованными наборами данных.

Kutools для Excelпредлагает более 300 расширенных функций для упрощения сложных задач, повышая креативность и эффективность.Интегрировано с возможностями ИИ, Kutools автоматизирует задачи с высокой точностью, делая управление данными простым и удобным.Подробная информация о Kutools для Excel…         Бесплатная пробная версия…

После загрузки и установки Kutools для Excelвыполните следующие действия:

  1. Выделите диапазон ячеек, из которых хотите извлечь адреса электронной почты, затем перейдите в меню «Kutools» > «Текст» и выберите «Извлечь адреса электронной почты».
  2. В появившемся диалоговом окне «Извлечь адреса электронной почты» выберите ячейку для вывода адреса электронной почты и нажмите кнопку «OK».
    Снимок экрана функции Kutools «Извлечь адрес электронной почты» в работе
Результат

Затем все адреса электронной почты в каждой ячейке выбранного диапазона будут немедленно извлечены.

Снимок экрана результатов извлечения адресов электронной почты с помощью Kutools

Kutools для Excel— раскройте весь потенциал Excel с помощью более чем 300 незаменимых инструментов, которые ускоряют и упрощают вашу работу, а также воспользуйтесь возможностями ИИ для более разумной обработки данных и повышения продуктивности.Получить сейчас


Извлечь адреса электронной почты из текстовой строки с помощью формулы

Вот длинная формула, которая поможет вам извлечь только адрес электронной почты из текста в Excel. Выполните следующие действия:

1. В соседней ячейке B1 введите следующую формулу:

=TRIM(RIGHT(SUBSTITUTE(LEFT(A1,FIND (" ",A1&," ",FIND("@",A1))-1)," ", REPT(" ",LEN(A1))),LEN(A1)))

Снимок экрана формулы для извлечения адресов электронной почты в Excel

2. Затем нажмите клавишу Enter, выделите ячейку B1 и перетащите маркер заполнения на диапазон, где вы хотите применить эту формулу. Таким образом из текстовой строки будут извлечены адреса электронной почты. См. снимок экрана:

Снимок экрана адресов электронной почты, извлеченных с помощью формулы в Excel

Примечания:

1. Знаки препинания после адреса электронной почты также будут извлечены.

2. Если ячейки не содержат адрес электронной почты, формула вернёт ошибку.

3. Если в ячейке указано несколько адресов электронной почты, формула извлечёт только первый из них.


Извлечь адреса электронной почты из текстовой строки с помощью пользовательской функции

Помимо приведённой выше формулы, вам также может пригодиться пользовательская функция для извлечения адреса электронной почты из текстовой строки.

1. Удерживая нажатыми клавиши ALT + F11, откройте окно Microsoft Visual Basic для приложений.

2. Выберите «Вставка» > «Модуль» и вставьте приведённый ниже макрос в окно модуля.

Function ExtractEmailFun(extractStr As String) As String
'Update by extendoffice
Dim CharList As String
On Error Resume Next
CheckStr = "[A-Za-z0-9._-]"
OutStr = ""
Index = 1
Do While True
    Index1 = VBA.InStr(Index, extractStr, "@")
    getStr = ""
    If Index1 > 0 Then
        For p = Index1 - 1 To 1 Step -1
            If Mid(extractStr, p, 1) Like CheckStr Then
                getStr = Mid(extractStr, p, 1) & getStr
            Else
                Exit For
            End If
        Next
        getStr = getStr & "@"
        For p = Index1 + 1 To Len(extractStr)
            If Mid(extractStr, p, 1) Like CheckStr Then
                getStr = getStr & Mid(extractStr, p, 1)
            Else
                Exit For
            End If
        Next
        Index = Index1 + 1
        If OutStr = "" Then
            OutStr = getStr
        Else
            OutStr = OutStr & Chr(10) & getStr
        End If
    Else
        Exit Do
    End If
Loop
ExtractEmailFun = OutStr
End Function

3. Затем сохраните код и введите формулу =ExtractEmailFun(A1) в соседнюю пустую ячейку. См. снимок экрана:

Снимок экрана пользовательской функции для извлечения адресов электронной почты в Excel

4. Затем нажмите клавишу Enter, выделите ячейку B1 и перетащите маркер заполнения на нужный диапазон — так формула будет применена ко всем соответствующим ячейкам, и из их текста автоматически извлекутся адреса электронной почты. См. снимок экрана:

Снимок экрана адресов электронной почты, извлеченных с помощью пользовательской функции в Excel

Примечания:

1. Если ячейки не содержат адрес электронной почты, они останутся пустыми.

2. Если в ячейке содержится несколько адресов электронной почты, будут извлечены все из них.


Извлечь адреса электронной почты из текстовой строки с помощью кода VBA

Если приведённые выше формулы кажутся слишком громоздкими, следующий код VBA поможет вам быстро извлечь адреса электронной почты.

1. Удерживая клавиши «ALT + F11», откройте окно «Microsoft Visual Basic для приложений».

2. Выберите «Вставка» > «Модуль» и вставьте приведённый ниже макрос в окно модуля.

VBA: Извлечь адреса электронной почты из текстовой строки

Sub ExtractEmail()
'Update 20130829
Dim WorkRng As Range
Dim arr As Variant
Dim CharList As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
arr = WorkRng.Value
CheckStr = "[A-Za-z0-9._-]"
For i = 1 To UBound(arr, 1)
    For j = 1 To UBound(arr, 2)
        extractStr = arr(i, j)
        outStr = ""
        Index = 1
        Do While True
            Index1 = VBA.InStr(Index, extractStr, "@")
            getStr = ""
            If Index1 > 0 Then
                For p = Index1 - 1 To 1 Step -1
                    If Mid(extractStr, p, 1) Like CheckStr Then
                        getStr = Mid(extractStr, p, 1) & getStr
                    Else
                        Exit For
                    End If
                Next
                getStr = getStr & "@"
                For p = Index1 + 1 To Len(extractStr)
                    If Mid(extractStr, p, 1) Like CheckStr Then
                        getStr = getStr & Mid(extractStr, p, 1)
                    Else
                        Exit For
                    End If
                Next
                Index = Index1 + 1
                If outStr = "" Then
                    outStr = getStr
                Else
                    outStr = outStr & Chr(10) & getStr
                End If
            Else
                Exit Do
            End If
        Loop
        arr(i, j) = outStr
    Next
Next
WorkRng.Value = arr
End Sub

3. Затем нажмите клавишу F5, чтобы запустить код, и в появившемся диалоговом окне укажите диапазон, к которому необходимо применить VBA. См. снимок экрана:

Снимок экрана с выделенным диапазоном для извлечения адресов электронной почты с помощью VBA в Excel

4. Затем нажмите кнопку OK, и адреса электронной почты будут извлечены из выбранных текстовых строк. См. снимки экрана:

Снимок экрана исходного текста до использования VBA для извлечения адресов электронной почтыСтрелкаСнимок экрана результатов после извлечения адресов электронной почты с помощью кода VBA в Excel

Примечания:

1. Если ячейки не содержат адрес электронной почты, они останутся пустыми.

2. Все адреса электронной почты будут извлечены, если в ячейке содержится более одного адреса электронной почты.

3. Извлечённые адреса электронной почты перезапишут исходные данные, поэтому мы рекомендуем сначала создать резервную копию.


голубая стрелка вправо с пузырём Демонстрация: Извлечь адреса электронной почты из текстовой строки с помощью Kutools для Excel

 
Kutools для Excel: Более 300 удобных инструментов всегда под рукой! Воспользуйтесь функциями на базе ИИ для более умной и быстрой работы!Скачать сейчас!

Связанная статья:

Как извлечь домены из нескольких адресов электронной почты в Excel?

Лучшие инструменты повышения продуктивности в Office

🤖KUTOOLS AI Помощник: Преобразуйте Анализ данных с помощью:Интеллектуального выполнения   |  Генерации кода|  Создания пользовательские формулы  |  Анализа данных и построения диаграмм|  Вызова Расширенные функции
Популярные функции:Поиск, выделение или Отметить дубликаты   |  Удалить пустые строки   |  Объединить столбцы или ячеек без потери данных   |  Округление без использования формул
Супер ПОИСК:VLookup по нескольким критериям  |  VLookup по нескольким значениям  |   VLookup по нескольким листам   |   Распознавание нечетких соответствий
Расширенный раскрывающийся список:Быстрое создание выпадающего списка   |  Зависимый выпадающий список   |  Выпадающий список с множественным выбором
Управление столбцами:Добавление заданного количества столбцов|Перемещение столбцов|Переключение видимости скрытых столбцов|Сравнение диапазонов и столбцов
Избранные функции:Сетка фокусировки   |  Просмотр дизайна   |Улучшенная строка формулы   | Управление рабочими книгами и листами   |  Библиотека ресурсов(автотекст)|  Выбор даты   |  Объединить листы  |  Шифрование/Расшифровать ячейки   | Отправка писем по списку   |  Супер фильтр   |   Специальный фильтр(Фильтр ячеек с жирным шрифтом/курсив/зачёркивание…) …
Лучшие наборы инструментов 15:12 Текстовыеинструменты(Добавить текст,Удалить определенные символы, …)|   50+Типыдиаграмм(Диаграмма Ганта, …)|   40+ Практические формулы(Рассчитать возраст на основе даты рождения, …)|   19 Инструментывставки(Вставить QR-код,Вставка изображения по пути, …)|   12 Инструментыпреобразования(Преобразовать в слова,Конвертация валют, …)|   7 Объединить и разделитьИнструменты(Расширенное объединение строк,Разделить ячейки, …)|… и многое другое
Используйте Kutools на предпочитаемом языке — поддержка английского, испанского, немецкого, французского, китайского и ещё 40+ языков!

Раскройте весь потенциал Excel с помощью Kutools для Excel и ощутите эффективность как никогда раньше.Kutools для Excel предлагает более 300 расширенных функций для повышения продуктивности и Экономия времени.Нажмите здесь, чтобы получить нужную Вам функцию…


Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу

  • Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
  • Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!

Все надстройки Kutools — один установщик

Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.

ExcelWordOutlookTabsPowerPoint
  • Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
  • Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
  • Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
  • 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
  • Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек