Note: The other languages of the website are Google-translated. Back to English

Làm cách nào để lấy địa chỉ email của người gửi từ một hoặc nhiều email trong Outlook?

Bạn đã bao giờ cố gắng trích xuất địa chỉ email từ trường "Từ" của một hoặc nhiều email đã nhận trong Outlook chưa? Bài viết này cung cấp mã VBA để giúp bạn xử lý tác vụ này.


Lấy địa chỉ email của người gửi từ một hoặc nhiều email trong Outlook

Vui lòng chạy mã VBA sau để trích xuất địa chỉ email từ trường "Từ" của một hoặc nhiều email đã nhận trong Outlook.

1. Mở một thư mục email, chọn một email mà bạn muốn lấy địa chỉ email của người gửi. Nhấn nút Khác + F11 phím để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.

Lời khuyên: Để chọn nhiều email, vui lòng nhấn giữ Ctrl và sau đó chọn từng email một.

2. bên trong Microsoft Visual Basic cho các ứng dụng cửa sổ, nhấp Chèn > Mô-đun, sau đó sao chép mã VBA sau vào cửa sổ Mô-đun (mã).

Mã VBA: trích xuất địa chỉ email của người gửi từ một hoặc nhiều email trong Outlook

Sub GetSmtpAddressOfSelectionEmail()
  Dim xExplorer As Explorer
  Dim xSelection As Selection
  Dim xItem As Object
  Dim xMail As MailItem
  Dim xAddress As String
  Dim xFldObj As Object
  Dim FilePath As String
  Dim xFSO As Scripting.FileSystemObject
  On Error Resume Next
  Set xExplorer = Application.ActiveExplorer
  Set xSelection = xExplorer.Selection
  For Each xItem In xSelection
    If xItem.Class = olMail Then
      Set xMail = xItem
      xAddress = xAddress & VBA.vbCrLf & "  " & GetSmtpAddress(xMail)
    End If
  Next
  If MsgBox("Sender SMTP Address is: " & xAddress & vbCrLf & vbCrLf & "Do you want to export the address list to a txt file? ", vbYesNo, "Kutools for Outlook") = vbYes Then
    Set xFldObj = CreateObject("Shell.Application").BrowseforFolder(0, "Select a Folder", 0, 16)
    Set xFSO = New Scripting.FileSystemObject
    If xFldObj Is Nothing Then Exit Sub
    FilePath = xFldObj.Items.Item.Path & "\Address.txt"
    Close #1
    Open FilePath For Output As #1
    Print #1, "Sender SMTP Address is: " & xAddress
    Close #1
    Set xFSO = Nothing
    Set xFldObj = Nothing
    MsgBox "Address list has been exported to:" & FilePath, vbOKOnly + vbInformation, "Kutools for Outlook"
  End If
End Sub
Function GetSmtpAddress(Mail As MailItem)
  Dim xNameSpace As Outlook.NameSpace
  Dim xEntryID As String
  Dim xAddressEntry As AddressEntry
  Dim PR_SENT_REPRESENTING_ENTRYID As String
  Dim PR_SMTP_ADDRESS As String
  Dim xExchangeUser As exchangeUser
  On Error Resume Next
  GetSmtpAddress = ""
  Set xNameSpace = Application.Session
  If Mail.sender.Type <> "EX" Then
    GetSmtpAddress = Mail.sender.Address
  Else
    PR_SENT_REPRESENTING_ENTRYID = "http://schemas.microsoft.com/mapi/proptag/0x00410102"
    xEntryID = Mail.PropertyAccessor.BinaryToString(Mail.PropertyAccessor.GetProperty(PR_SENT_REPRESENTING_ENTRYID))
    Set xAddressEntry = xNameSpace.GetAddressEntryFromID(xEntryID)
    If xAddressEntry Is Nothing Then Exit Function
    If xAddressEntry.AddressEntryUserType = olExchangeUserAddressEntry Or xAddressEntry.AddressEntryUserType = olExchangeRemoteUserAddressEntry Then
      Set xExchangeUser = xAddressEntry.GetExchangeUser()
      If xExchangeUser Is Nothing Then Exit Function
      GetSmtpAddress = xExchangeUser.PrimarySmtpAddress
    Else
      PR_SMTP_ADDRESS = "http://schemas.microsoft.com/mapi/proptag/0x39FE001E"
      GetSmtpAddress = xAddressEntry.PropertyAccessor.GetProperty(PR_SMTP_ADDRESS)
    End If
  End If
End Function

3. nhấp chuột CÔNG CỤ > dự án, sau đó kiểm tra Microsoft Scripting Runtime hộp trong Tài liệu tham khảo - Project1 hộp thoại.

4. Nhấn nút F5 phím để chạy mã. Sau đó a Kutools cho Outlook hộp thoại bật lên, liệt kê tất cả các địa chỉ email của người gửi trong số các email đã chọn.

Lời khuyên:

Nếu bạn cần xuất danh sách địa chỉ sang tệp txt, hãy nhấp vào .
Hoặc nhấp vào Không nút để kết thúc quá trình.

5. Sau khi nhấp vào nút, một Chọn thư mục hộp thoại bật lên. Vui lòng chọn một thư mục để lưu tệp và nhấp vào OK .

6. Cuối cùng, a Kutools cho Outlook hộp thoại sẽ bật lên, cho bạn biết đường dẫn của tệp đã xuất. Nhấp chuột OK để đóng nó.

7. Chuyển đến thư mục lưu tệp đã xuất và mở tệp .txt có tên Địa Chỉ để xem địa chỉ email của người gửi trong số các email đã chọn.


Kutools cho Outlook - Cung cấp 100 Tính năng Nâng cao cho Outlook và Làm cho Công việc Dễ dàng hơn Nhiều!

  • Auto CC / BCC bởi các quy tắc khi gửi email; Tự động chuyển tiếp Nhiều Email theo tùy chỉnh; Tự động trả lời không có máy chủ trao đổi và các tính năng tự động khác ...
  • Cảnh báo BCC - hiển thị tin nhắn khi bạn cố gắng trả lời tất cả nếu địa chỉ thư của bạn có trong danh sách BCC; Nhắc nhở khi thiếu tệp đính kèmvà các tính năng nhắc nhở khác ...
  • Trả lời (Tất cả) Với Tất cả Tệp đính kèm trong cuộc trò chuyện qua thư; Trả lời nhiều email trong vài giây; Tự động thêm lời chào khi trả lời; Thêm Ngày vào chủ đề ...
  • Công cụ Tệp đính kèm: Quản lý Tất cả Tệp đính kèm trong Tất cả Thư, Tự động tách, Nén tất cả, Đổi tên tất cả, Lưu tất cả ... Báo cáo nhanh, Đếm thư đã chọnhữu ích. Cảm ơn !
  • Email rác mạnh mẽ Theo phong tục; Xóa thư và liên hệ trùng lặphữu ích. Cảm ơn ! Cho phép bạn làm việc thông minh hơn, nhanh hơn và tốt hơn trong Outlook.
shot kutools triển vọng tab kutools 1180x121
shot kutools triển vọng kutools plus tab 1180x121
 
Nhận xét (0)
Chưa có xếp hạng. Hãy là người đầu tiên xếp hạng!
Không có bình luận nào được đăng ở đây
Để lại ý kiến ​​của bạn
Đăng với tư cách khách
×
Đánh giá bài viết này:
0   Nhân vật
Các vị trí được đề xuất