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

Извлечь адреса электронной почты из текстовой строки с помощью «Быстрого заполнения»
Функция «Быстрое заполнение» в Excel — это быстрый и эффективный способ автоматически форматировать или извлекать данные на основе заданных вами шаблонов. В этом разделе мы покажем, как использовать «Быстрое заполнение» для извлечения адресов электронной почты из столбца со смешанными данными. Этот метод особенно полезен при работе со списками, содержащими разнотипный текст, когда нужно выделить только адреса электронной почты.
- Click on the first cell in the adjacent column (e.g., B2), where you want the email address to appear.
- Вручную введите Адрес электронной почты из соответствующей строки в столбце A, а затем нажмите клавишу Enter.Например, если в ячейке A2 содержится «ana varela@gmail.com», введите « ana varela@gmail.com » в ячейку B2.

- Оставайтесь в ячейке B3 и нажмите «Ctrl + E», чтобы активировать «Быстрое заполнение».Excel автоматически заполнит остальную часть столбца B значениями Извлечь адреса электронной почты.

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

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

Kutools для Excel— раскройте весь потенциал Excel с помощью более чем 300 незаменимых инструментов, которые ускоряют и упрощают вашу работу, а также воспользуйтесь возможностями ИИ для более разумной обработки данных и повышения продуктивности.Получить сейчас
Извлечь адреса электронной почты из текстовой строки с помощью формулы
Вот длинная формула, которая поможет вам извлечь только адрес электронной почты из текста в Excel. Выполните следующие действия:
1. В соседней ячейке B1 введите следующую формулу:
=TRIM(RIGHT(SUBSTITUTE(LEFT(A1,FIND (" ",A1&," ",FIND("@",A1))-1)," ", REPT(" ",LEN(A1))),LEN(A1))) 
2. Затем нажмите клавишу Enter, выделите ячейку B1 и перетащите маркер заполнения на диапазон, где вы хотите применить эту формулу. Таким образом из текстовой строки будут извлечены адреса электронной почты. См. снимок экрана:

Примечания:
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) в соседнюю пустую ячейку. См. снимок экрана:

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

Примечания:
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. См. снимок экрана:

4. Затем нажмите кнопку OK, и адреса электронной почты будут извлечены из выбранных текстовых строк. См. снимки экрана:
![]() | ![]() | ![]() |
Примечания:
1. Если ячейки не содержат адрес электронной почты, они останутся пустыми.
2. Все адреса электронной почты будут извлечены, если в ячейке содержится более одного адреса электронной почты.
3. Извлечённые адреса электронной почты перезапишут исходные данные, поэтому мы рекомендуем сначала создать резервную копию.
Демонстрация: Извлечь адреса электронной почты из текстовой строки с помощью Kutools для Excel
Связанная статья:
Как извлечь домены из нескольких адресов электронной почты в Excel?
Лучшие инструменты повышения продуктивности в Office
Раскройте весь потенциал 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.
- Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
- Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
- Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
- 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
- Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек





