![]() |
If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below. |
|
|
Thread Tools | Search this Thread | Display Modes |
#1
|
|||
|
|||
![]()
Hi there. I am working in Access 2003 with a reference to Outlook 2003. Is
there a way in VBA to find an email address based on a name? Maybe something like using the Select Names dialog when you click the To... button on an email message? I can obviously do this manually by typing in the name and showing results from the Global Address List, but I could have hundreds to do and I would love to populate a table automatically behind the scenes. Thanks in advance, Clint |
Ads |
#2
|
|||
|
|||
![]()
Use Namespace.CreateRecipient, followed by Recipient.Resolve
-- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "cherman" wrote in message ... Hi there. I am working in Access 2003 with a reference to Outlook 2003. Is there a way in VBA to find an email address based on a name? Maybe something like using the Select Names dialog when you click the To... button on an email message? I can obviously do this manually by typing in the name and showing results from the Global Address List, but I could have hundreds to do and I would love to populate a table automatically behind the scenes. Thanks in advance, Clint |
#3
|
|||
|
|||
![]()
Thank you. I can get the code to work with my existing code and get the test
to pan out (that the recipient is in the address book), but how do I capture the actual email address? Thanks again! Clint "Dmitry Streblechenko" wrote: Use Namespace.CreateRecipient, followed by Recipient.Resolve -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "cherman" wrote in message ... Hi there. I am working in Access 2003 with a reference to Outlook 2003. Is there a way in VBA to find an email address based on a name? Maybe something like using the Select Names dialog when you click the To... button on an email message? I can obviously do this manually by typing in the name and showing results from the Global Address List, but I could have hundreds to do and I would love to populate a table automatically behind the scenes. Thanks in advance, Clint . |
#4
|
|||
|
|||
![]()
After you successfully call Recipient.Resolve, Recipeint.Address will give
you what you need. -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "cherman" wrote in message ... Thank you. I can get the code to work with my existing code and get the test to pan out (that the recipient is in the address book), but how do I capture the actual email address? Thanks again! Clint "Dmitry Streblechenko" wrote: Use Namespace.CreateRecipient, followed by Recipient.Resolve -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "cherman" wrote in message ... Hi there. I am working in Access 2003 with a reference to Outlook 2003. Is there a way in VBA to find an email address based on a name? Maybe something like using the Select Names dialog when you click the To... button on an email message? I can obviously do this manually by typing in the name and showing results from the Global Address List, but I could have hundreds to do and I would love to populate a table automatically behind the scenes. Thanks in advance, Clint . |
#5
|
|||
|
|||
![]()
Hi there again. When I use this, I get a string like these.
..../ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=cghermaX ..../OU=Americas01/cn=Recipients/cn=dmahesh Although I can use the name or alias to populate an email, I really need the actual email address. I've been looking online, but I just can't seem to figure this out. Any suggestions? Thanks, Clint "Dmitry Streblechenko" wrote: After you successfully call Recipient.Resolve, Recipeint.Address will give you what you need. -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "cherman" wrote in message ... Thank you. I can get the code to work with my existing code and get the test to pan out (that the recipient is in the address book), but how do I capture the actual email address? Thanks again! Clint "Dmitry Streblechenko" wrote: Use Namespace.CreateRecipient, followed by Recipient.Resolve -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "cherman" wrote in message ... Hi there. I am working in Access 2003 with a reference to Outlook 2003. Is there a way in VBA to find an email address based on a name? Maybe something like using the Select Names dialog when you click the To... button on an email message? I can obviously do this manually by typing in the name and showing results from the Global Address List, but I could have hundreds to do and I would love to populate a table automatically behind the scenes. Thanks in advance, Clint . . |
#6
|
|||
|
|||
![]()
That *is* the actual e-mail address. It just happens to be of EX type, while
you probably need SMTP. If you are using Outlook 2007 or higher, you can use ExchangeUser.PrimarySmtpAddress property (ExchangeUser object is returned by the AddressEntry.GetExchangeUser method, which can return null). -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "cherman" wrote in message ... Hi there again. When I use this, I get a string like these. .../ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=cghermaX .../OU=Americas01/cn=Recipients/cn=dmahesh Although I can use the name or alias to populate an email, I really need the actual email address. I've been looking online, but I just can't seem to figure this out. Any suggestions? Thanks, Clint "Dmitry Streblechenko" wrote: After you successfully call Recipient.Resolve, Recipeint.Address will give you what you need. -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "cherman" wrote in message ... Thank you. I can get the code to work with my existing code and get the test to pan out (that the recipient is in the address book), but how do I capture the actual email address? Thanks again! Clint "Dmitry Streblechenko" wrote: Use Namespace.CreateRecipient, followed by Recipient.Resolve -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "cherman" wrote in message ... Hi there. I am working in Access 2003 with a reference to Outlook 2003. Is there a way in VBA to find an email address based on a name? Maybe something like using the Select Names dialog when you click the To... button on an email message? I can obviously do this manually by typing in the name and showing results from the Global Address List, but I could have hundreds to do and I would love to populate a table automatically behind the scenes. Thanks in advance, Clint . . |
#7
|
|||
|
|||
![]()
Thanks a lot for your continued help. Sorry, but as I mentioned before, I'm
using Outlook 2003. I mentioned in a previous post that I know what is returned is an actual email address. This will work just fine for my internal needs. However, my users will be exporting contact lists that will go all over the place, so the SMTP address is the only one that will do. We cannot pass something like "Clint Herman" outside of our own Exchange environment as an email address. Any more suggestions? I thought it would be easy to get the SMTP. Maybe it is and I just can't seem to hit the target. Is there somewhere online that has a complete example of this? Thanks again! Clint "Dmitry Streblechenko" wrote: That *is* the actual e-mail address. It just happens to be of EX type, while you probably need SMTP. If you are using Outlook 2007 or higher, you can use ExchangeUser.PrimarySmtpAddress property (ExchangeUser object is returned by the AddressEntry.GetExchangeUser method, which can return null). -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "cherman" wrote in message ... Hi there again. When I use this, I get a string like these. .../ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=cghermaX .../OU=Americas01/cn=Recipients/cn=dmahesh Although I can use the name or alias to populate an email, I really need the actual email address. I've been looking online, but I just can't seem to figure this out. Any suggestions? Thanks, Clint "Dmitry Streblechenko" wrote: After you successfully call Recipient.Resolve, Recipeint.Address will give you what you need. -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "cherman" wrote in message ... Thank you. I can get the code to work with my existing code and get the test to pan out (that the recipient is in the address book), but how do I capture the actual email address? Thanks again! Clint "Dmitry Streblechenko" wrote: Use Namespace.CreateRecipient, followed by Recipient.Resolve -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "cherman" wrote in message ... Hi there. I am working in Access 2003 with a reference to Outlook 2003. Is there a way in VBA to find an email address based on a name? Maybe something like using the Select Names dialog when you click the To... button on an email message? I can obviously do this manually by typing in the name and showing results from the Global Address List, but I could have hundreds to do and I would love to populate a table automatically behind the scenes. Thanks in advance, Clint . . . |
#8
|
|||
|
|||
![]()
If you cannot use Outlook 2007, your only options are either Extended MAPI
(C++/Delphi) or plug Redemption: it exposes SmtpAddress propertty in all versions of Outlook - you can use somethng like the following: set Session = CreateObject("Redemption.RDOSession") Session.MAPIOBJECT = Application.Session.MAPIOBJECT set AddrEntry = Session.AddressBook.ResolveName("dmitry streblechenko") strSmtpAddress = AddrEntry.SmtpAddress MsgBox strSmtpAddress /plug -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "cherman" wrote in message ... Thanks a lot for your continued help. Sorry, but as I mentioned before, I'm using Outlook 2003. I mentioned in a previous post that I know what is returned is an actual email address. This will work just fine for my internal needs. However, my users will be exporting contact lists that will go all over the place, so the SMTP address is the only one that will do. We cannot pass something like "Clint Herman" outside of our own Exchange environment as an email address. Any more suggestions? I thought it would be easy to get the SMTP. Maybe it is and I just can't seem to hit the target. Is there somewhere online that has a complete example of this? Thanks again! Clint "Dmitry Streblechenko" wrote: That *is* the actual e-mail address. It just happens to be of EX type, while you probably need SMTP. If you are using Outlook 2007 or higher, you can use ExchangeUser.PrimarySmtpAddress property (ExchangeUser object is returned by the AddressEntry.GetExchangeUser method, which can return null). -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "cherman" wrote in message ... Hi there again. When I use this, I get a string like these. .../ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=cghermaX .../OU=Americas01/cn=Recipients/cn=dmahesh Although I can use the name or alias to populate an email, I really need the actual email address. I've been looking online, but I just can't seem to figure this out. Any suggestions? Thanks, Clint "Dmitry Streblechenko" wrote: After you successfully call Recipient.Resolve, Recipeint.Address will give you what you need. -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "cherman" wrote in message ... Thank you. I can get the code to work with my existing code and get the test to pan out (that the recipient is in the address book), but how do I capture the actual email address? Thanks again! Clint "Dmitry Streblechenko" wrote: Use Namespace.CreateRecipient, followed by Recipient.Resolve -- Dmitry Streblechenko (MVP) http://www.dimastr.com/ OutlookSpy - Outlook, CDO and MAPI Developer Tool - "cherman" wrote in message ... Hi there. I am working in Access 2003 with a reference to Outlook 2003. Is there a way in VBA to find an email address based on a name? Maybe something like using the Select Names dialog when you click the To... button on an email message? I can obviously do this manually by typing in the name and showing results from the Global Address List, but I could have hundreds to do and I would love to populate a table automatically behind the scenes. Thanks in advance, Clint . . . |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
moving emails to folders based on sender email address | Rudy L. | Outlook and VBA | 1 | December 31st 08 12:14 PM |
Finding Old Contacts not in address book | Meira | Outlook - Using Contacts | 2 | September 18th 08 04:32 AM |
Automaticly change outgoing isp based on sel email address - revisited | pfa | Outlook and VBA | 0 | September 14th 06 01:01 AM |
Automaticly change outgoing isp based on sel email address | Paul T. Swaffer | Outlook and VBA | 4 | July 16th 06 02:17 PM |