Làm thế nào để nhanh chóng trích xuất địa chỉ email từ chuỗi văn bản?
Khi bạn nhập một số địa chỉ email từ trang web sang trang tính Excel, luôn có văn bản không liên quan, nhưng bây giờ bạn chỉ muốn trích xuất địa chỉ email thuần túy từ chuỗi văn bản (xem ảnh chụp màn hình sau). Làm thế nào bạn có thể nhanh chóng chỉ lấy các địa chỉ email từ văn bản di động?
Trích xuất địa chỉ email từ chuỗi văn bản với Công thức
Ở đây tôi giới thiệu cho bạn một công thức dài để chỉ trích xuất địa chỉ email từ văn bản trong Excel. Vui lòng làm như sau:
1. Trong ô liền kề B1, nhập công thức này = TRIM (RIGHT (SUBSTITUTE (LEFT (A1, FIND ("", A1 & "", FIND ("@", A1)) - 1), "", REPT ("", LEN (A1))), LEN ( A1))).
2. Sau đó nhấn đăng ký hạng mục thi , sau đó chọn ô B1 và kéo chốt điền vào phạm vi mà bạn muốn chứa công thức này. Và các địa chỉ email trong phạm vi đã được trích xuất từ chuỗi văn bản. Xem ảnh chụp màn hình:
Ghi chú:
1. Dấu chấm câu sau địa chỉ email cũng sẽ được trích xuất.
2. Nếu các ô không chứa địa chỉ email, công thức sẽ hiển thị các giá trị lỗi.
3. Nếu có nhiều hơn một địa chỉ email trong một ô, công thức sẽ chỉ trích xuất địa chỉ đầu tiên.
Trích xuất nhiều địa chỉ email từ chuỗi văn bản
Kutools cho Excel'S Trích xuất địa chỉ email có thể giúp bạn trích xuất địa chỉ email từ chuỗi văn bản một cách nhanh chóng và thuận tiện. Nhấp để tải xuống Kutools cho Excel!
Kutools cho Excel: với hơn 300 bổ trợ Excel tiện dụng, dùng thử miễn phí không giới hạn trong 30 ngày. Tải xuống và dùng thử miễn phí ngay!
Trích xuất địa chỉ email từ chuỗi văn bản với chức năng do người dùng xác định
Ngoại trừ công thức trên, một Hàm do Người dùng Xác định cũng có thể giúp bạn lấy địa chỉ email từ chuỗi văn bản.
1. Giữ ALT + F11 chìa khóa và nó mở Microsoft Visual Basic cho các ứng dụng cửa sổ.
2. Nhấp chuột Chèn > Mô-đunvà dán macro sau vào cửa sổ Mô-đun.
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. Sau đó lưu mã và nhập công thức = ExtractEmailFun (A1) trong một ô trống liền kề, xem ảnh chụp màn hình:
4. Và sau đó nhấn đăng ký hạng mục thi , chọn ô B1 và kéo chốt điền vào phạm vi mà bạn cần công thức. Và tất cả các địa chỉ email đã được trích xuất từ văn bản ô. Xem ảnh chụp màn hình:
Ghi chú:
1. Nếu các ô không có địa chỉ email, nó sẽ hiển thị các ô trống.
2. Nếu có nhiều hơn một địa chỉ email trong một ô, tất cả các email sẽ được trích xuất.
Trích xuất địa chỉ email từ chuỗi văn bản với mã VBA
Nếu bạn cảm thấy các công thức trên gây rắc rối cho mình, mã VBA sau có thể giúp bạn trích xuất các địa chỉ email tại một.
1. Giữ ALT + F11 chìa khóa, và nó mở ra một Microsoft Visual Basic cho các ứng dụng cửa sổ.
2. Nhấp chuột Chèn > Mô-đunvà dán macro sau vào Cửa sổ mô-đun.
VBA: trích xuất địa chỉ email từ chuỗi văn bản
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. Sau đó nhấn F5 để chạy mã này và bạn nên chọn một phạm vi mà bạn muốn sử dụng VBA trong hộp thoại bật ra, xem ảnh chụp màn hình:
4. Sau đó nhấn vào OKvà các địa chỉ email đã được trích xuất từ các chuỗi văn bản đã chọn. Xem ảnh chụp màn hình:
![]() |
![]() |
![]() |
Ghi chú:
1. Nếu các ô không có địa chỉ email, nó sẽ hiển thị các ô trống.
2. Tất cả các email sẽ được trích xuất, nếu có nhiều hơn một địa chỉ email trong một ô.
3. Các email được trích xuất sẽ bao gồm dữ liệu gốc, vì vậy bạn nên sao lưu dữ liệu trước nếu cần.
Trích xuất địa chỉ email từ chuỗi văn bản với Kutools cho Excel bằng một cú nhấp chuột
Các phương pháp trên có vẻ hơi phức tạp đối với người mới bắt đầu học Excel của chúng tôi, ở đây, tôi có thể giới thiệu cho bạn một công cụ nhanh chóng và dễ dàng- Kutools cho Excel, Với khả Trích xuất địa chỉ email tiện ích, bạn có thể trích xuất địa chỉ email từ chuỗi văn bản mà không cần nỗ lực nhiều.
Kutools cho Excel : với hơn 300 bổ trợ Excel tiện dụng, dùng thử miễn phí không giới hạn trong 30 ngày. |
Nếu bạn đã cài đặt Kutools cho Excel, vui lòng làm như sau:
1. Chọn các ô chứa các chuỗi văn bản.
2. Nhấp chuột Kutools > bản văn > Trích xuất địa chỉ email, xem ảnh chụp màn hình:
3. Và một Trích xuất địa chỉ email hộp thoại sẽ bật ra, chọn một ô mà bạn muốn đặt kết quả, xem ảnh chụp màn hình:
4. Sau đó nhấn vào OK , tất cả các địa chỉ email đã được trích xuất từ các chuỗi văn bản, xem ảnh chụp màn hình:
Nhấp để Tải xuống và dùng thử miễn phí Kutools cho Excel ngay!
Demo: Trích xuất địa chỉ email từ chuỗi văn bản với Kutools cho Excel
Bài viết liên quan:
Làm cách nào để trích xuất miền từ nhiều địa chỉ email trong Excel?
Các công cụ năng suất văn phòng tốt nhất
Kutools cho Excel giải quyết hầu hết các vấn đề của bạn và tăng 80% năng suất của bạn
- Tái sử dụng: Chèn nhanh công thức phức tạp, biểu đồ và bất cứ thứ gì bạn đã sử dụng trước đây; Mã hóa ô với mật khẩu; Tạo danh sách gửi thư và gửi email ...
- Thanh siêu công thức (dễ dàng chỉnh sửa nhiều dòng văn bản và công thức); Bố cục đọc (dễ dàng đọc và chỉnh sửa số lượng ô lớn); Dán vào Dải ô đã Lọchữu ích. Cảm ơn !
- Hợp nhất các ô / hàng / cột mà không làm mất dữ liệu; Nội dung phân chia ô; Kết hợp các hàng / cột trùng lặp... Ngăn chặn các ô trùng lặp; So sánh các dãyhữu ích. Cảm ơn !
- Chọn trùng lặp hoặc duy nhất Hàng; Chọn hàng trống (tất cả các ô đều trống); Tìm siêu và Tìm mờ trong Nhiều Sổ làm việc; Chọn ngẫu nhiên ...
- Bản sao chính xác Nhiều ô mà không thay đổi tham chiếu công thức; Tự động tạo tài liệu tham khảo sang Nhiều Trang tính; Chèn Bullets, Hộp kiểm và hơn thế nữa ...
- Trích xuất văn bản, Thêm Văn bản, Xóa theo Vị trí, Xóa không gian; Tạo và In Tổng số phân trang; Chuyển đổi giữa nội dung ô và nhận xéthữu ích. Cảm ơn !
- Siêu lọc (lưu và áp dụng các lược đồ lọc cho các trang tính khác); Sắp xếp nâng cao theo tháng / tuần / ngày, tần suất và hơn thế nữa; Bộ lọc đặc biệt bằng cách in đậm, in nghiêng ...
- Kết hợp Workbook và WorkSheets; Hợp nhất các bảng dựa trên các cột chính; Chia dữ liệu thành nhiều trang tính; Chuyển đổi hàng loạt xls, xlsx và PDFhữu ích. Cảm ơn !
- Hơn 300 tính năng mạnh mẽ. Hỗ trợ Office / Excel 2007-2021 và 365. Hỗ trợ tất cả các ngôn ngữ. Dễ dàng triển khai trong doanh nghiệp hoặc tổ chức của bạn. Đầy đủ tính năng Dùng thử miễn phí 30 ngày. Bảo đảm hoàn lại tiền trong 60 ngày.

Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều
- Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
- Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
- Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!






















