Excel에서 텍스트 문자열로부터 이메일 주소를 빠르게 추출하기 - 전체 가이드
Excel에서 가져온 데이터나 혼합된 텍스트 문자열을 다룰 때, 이메일 주소를 빠르고 정확하게 추출해야 할 필요가 있을 수 있습니다. 이메일 주소가 다른 텍스트와 섞여 있는 목록을 처리하거나 대량의 데이터에서 이메일을 추출해야 하는 경우, 작업을 완료하는 데 사용할 수 있는 여러 가지 효율적인 방법이 있습니다. 본 가이드에서는 Flash Fill, Kutools for Excel, 수식, 사용자 정의 함수 및 VBA 코드를 사용하여 텍스트 문자열로부터 이메일 주소를 추출하는 다양한 기술에 대해 설명합니다. 각 방법은 필요와 데이터의 복잡성에 따라 다른 장점을 제공합니다.

Flash Fill로 텍스트 문자열로부터 이메일 주소 추출하기
Excel의 Flash Fill 기능은 정의한 패턴에 따라 데이터를 자동으로 형식화하거나 추출할 수 있는 빠르고 효율적인 방법을 제공합니다. 이 섹션에서는 Flash Fill을 사용하여 혼합된 데이터 열에서 이메일 주소를 추출하는 방법을 안내합니다. 이 방법은 다양한 종류의 텍스트가 포함된 목록을 다루고 이메일 주소만 추출해야 할 때 특히 유용합니다.
- 이메일 주소를 나타내려는 인접한 열의 첫 번째 셀(예: B2)을 클릭하세요.
- Column A의 해당 행에서 이메일 주소를 수동으로 입력한 다음 Enter를 누릅니다. 예를 들어, A2에 'ana varela@gmail.com'이 포함되어 있다면, B2에 'ana varela@gmail.com'을 입력하세요.
- B3 셀에 머물러 있는 상태에서 'Ctrl + E'를 눌러 Flash Fill을 활성화합니다. Excel은 자동으로 Column B의 나머지 부분에 추출된 이메일 주소를 채웁니다.
- Flash Fill은 Excel 2013 및 이후 버전에서 사용 가능합니다. Excel 2010 또는 그 이전 버전을 사용 중이라면 이 기능을 사용할 수 없습니다.
- Flash Fill을 적용하는 셀이 '텍스트'로 서식이 지정되어 있는지 확인하여 원치 않는 서식 문제를 방지하세요.
Kutools로 한 번의 클릭으로 이메일 주소 일괄 추출하기
데이터 세트에서 이메일 주소를 추출하는 데 있어, Kutools for Excel의 '이메일 주소 추출' 기능은 Excel의 Flash Fill에 대한 강력한 대안을 제공합니다. Flash Fill은 패턴 인식에 수동적인 접근 방식을 제공하는 반면, Kutools for Excel은 단 한 번의 클릭으로 프로세스를 자동화하여 대량의 데이터를 효율적으로 처리하는 데 이상적입니다. 이 도구는 추출 과정을 단순화할 뿐만 아니라 복잡하거나 일관되지 않은 데이터 세트를 다룰 때 특히 정확성과 속도를 보장합니다.
Kutools for Excel을 다운로드하고 설치한 후, 다음과 같이 진행하세요:
- 이메일 주소를 추출하려는 셀 범위를 선택합니다. 그런 다음 'Kutools' > 'Text' > 'Extract Email Address'를 선택합니다.
- 'Extract Email Address' 대화 상자가 나타나면 이메일 주소를 출력할 셀을 선택하고 확인을 클릭합니다.
결과
그러면 선택된 범위 내 각 셀의 모든 이메일 주소가 즉시 추출됩니다.

Kutools for Excel - 필수적인 300개 이상의 도구로 Excel을 강화하세요. 영구적으로 무료인 AI 기능을 활용하세요! 지금 바로 구매하기
수식으로 텍스트 문자열로부터 이메일 주소 추출하기
다음에서는 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 for Applications' 창이 열립니다.
2. 'Insert' > 'Module'을 클릭하고 Module 창에 다음 매크로를 붙여넣습니다.
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 for Applications' 창이 열립니다.
2. 'Insert' > 'Module'을 클릭하고 Module 창에 다음 매크로를 붙여넣습니다.
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. 확인을 클릭하면 선택된 텍스트 문자열로부터 이메일 주소가 추출됩니다. 스크린샷 참고:
![]() | ![]() | ![]() |
참고:
1. 셀에 이메일 주소가 없는 경우, 빈 셀로 표시됩니다.
2. 하나의 셀에 여러 개의 이메일 주소가 있는 경우, 모든 이메일이 추출됩니다.
3. 추출된 이메일은 원본 데이터를 덮어쓰므로 데이터를 백업하는 것이 권장됩니다.
데모: Kutools for Excel로 텍스트 문자열로부터 이메일 주소 추출하기
관련 기사:
Excel에서 여러 이메일 주소로부터 도메인을 추출하는 방법은?
최고의 오피스 생산성 도구
? | Kutools AI Aide: 지능형 실행, 코드 생성, 사용자 정의 수식 작성, 데이터 분석 및 차트 생성, Kutools 함수 호출을 기반으로 데이터 분석 혁신… |
인기 기능: 중복 찾기, 강조 또는 식별 | 빈 행 삭제 | 데이터 손실 없이 열 또는 셀 결합 | 수식 없이 반올림 ... | |
슈퍼 LOOKUP: 다중 조건 VLookup | 다중 값 VLookup | 다중 시트 조회 | 퍼지 매치 .... | |
고급 드롭다운 목록: 빠르게 드롭다운 목록 만들기 | 종속 드롭다운 목록 | 다중 선택 드롭다운 목록 .... | |
열 관리자: 특정 개수의 열 추가 | 열 이동 | 숨겨진 열의 가시성 상태 전환 | 범위 및 열 비교 ... | |
주요 기능: 그리드 포커스 | 디자인 보기 | 향상된 수식 표시줄 | 통합 문서 및 시트 관리자 | 자동 텍스트 라이브러리 (Auto Text) | 날짜 선택기 | 데이터 병합 | 셀 암호화/해독 | 목록으로 이메일 보내기 | 슈퍼 필터 | 특수 필터 (굵은 글꼴/이탤릭체/취소선 필터링...) ... | |
최고의 15가지 도구 모음: 12개의 텍스트 도구 (텍스트 추가, 특정 문자 삭제, ...) | 50+ 차트 유형 (간트 차트, ...) | 40+ 실용적인 수식 (생일을 기반으로 나이 계산, ...) | 19개 삽입 도구 (QR 코드 삽입, 경로에서 그림 삽입, ...) | 12개 변환 도구 (단어로 변환하기, 통화 변환, ...) | 7개 병합 및 분할 도구 (고급 행 병합, 셀 분할, ...) | ... 그리고 더 많은 기능들 |
Kutools for Excel로 엑셀 스킬을 강화하고 지금까지 경험하지 못한 효율성을 체험하세요. Kutools for Excel은 생산성을 향상시키고 시간을 절약할 수 있는 300개 이상의 고급 기능을 제공합니다. 가장 필요한 기능을 얻으려면 여기를 클릭하세요...
Office Tab은 탭 인터페이스를 Office에 제공하여 작업을 훨씬 쉽게 만듭니다.
- Word, Excel, PowerPoint에서 탭 편집 및 읽기를 활성화하세요.
- 새 창 대신 동일한 창의 새 탭에서 여러 문서를 열고 생성하세요.
- 생산성을 50% 향상시키고 매일 수백 번의 마우스 클릭을 줄입니다!