Results 1 to 2 of 2

Thread: How to get all SMTP addresses from a recipient

  1. #1

    Thread Starter
    New Member
    Join Date
    Feb 2002
    Posts
    3

    Post How to get all SMTP addresses from a recipient

    Hi!

    I'm trying to get a list of all SMTP-addresses of a recipient. This is my code (Outlook 2000 VBA!!!):

    Code:
    Sub getAdres()
        Dim mapi As NameSpace
        Dim addressEntry As addressEntry
        Dim addressList  As addressList
        
        Set mapi = GetNamespace("MAPI")
        Set addressList = mapi.AddressLists.Item(1)
        
        For Each addressEntry In addressList.AddressEntries
                            
            If addressEntry.DisplayType = olUser Then
                
                'Print information if entry is a user
                Debug.Print addressEntry.Name
                Debug.Print addressEntry.Address
            
            End If
            
        Next a
    
    End Sub
    But the only address I get is something like this: /o=Company/ou=Test/cn=Recipients/cn=TT...
    This user's got 3 SMTP address. I see them when I use the addressEntry.Details (0) command.

    Does anyone know how to get the SMTP addresses????

    Thanx!

  2. #2
    Ex-Super Mod RobDog888's Avatar
    Join Date
    Apr 2001
    Location
    LA, Calif. Raiders #1 AKA:Gangsta Yoda™
    Posts
    60,709
    Try debugging with these changes. It will filter for only the SMTP addresses.
    Also, you didn't need the Next a since it was not being initialized in the for loop.
    This works fine for me. The /o stuff was for the "EX" Types.
    Code:
    Private Sub getAdres()
    
        Dim mapi As NameSpace
        Dim addressEntry As addressEntry
        Dim addressList  As addressList
        
        Set mapi = GetNamespace("MAPI")
        Set addressList = mapi.AddressLists.Item(1)
        
        For Each addressEntry In addressList.AddressEntries
            If addressEntry.DisplayType = olUser And addressEntry.Type = "SMTP" Then
                'Print information if entry is a user
                Debug.Print addressEntry.Name
                Debug.Print addressEntry.Address
                Debug.Print addressEntry.Type
            End If
        Next
    
    End Sub
    VB/Office Guru™ (AKA: Gangsta Yoda®)
    I dont answer coding questions via PM. Please post a thread in the appropriate forum.

    Microsoft MVP 2006-2011
    Office Development FAQ (C#, VB.NET, VB 6, VBA)
    Senior Jedi Software Engineer MCP (VB 6 & .NET), BSEE, CET
    If a post has helped you then Please Rate it!
    Reps & Rating PostsVS.NET on Vista Multiple .NET Framework Versions Office Primary Interop AssembliesVB/Office Guru™ Word SpellChecker™.NETVB/Office Guru™ Word SpellChecker™ VB6VB.NET Attributes Ex.Outlook Global Address ListAPI Viewer utility.NET API Viewer Utility
    System: Intel i7 6850K, Geforce GTX1060, Samsung M.2 1 TB & SATA 500 GB, 32 GBs DDR4 3300 Quad Channel RAM, 2 Viewsonic 24" LCDs, Windows 10, Office 2016, VS 2019, VB6 SP6

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width