Finding an email address based on a name

Status
Not open for further replies.
C

cherman

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
 
Use Namespace.CreateRecipient, followed by Recipient.Resolve

Dmitry Streblechenko (MVP)

-

"cherman" <cherman> wrote in message

news:B5F1D65E-1421-495E-B174-D10EF49573BB@microsoft.com...
> 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
 
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)
>

>

>

> -
> "cherman" <cherman> wrote in message
> news:B5F1D65E-1421-495E-B174-D10EF49573BB@microsoft.com...
> > 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


> .
>
 
After you successfully call Recipient.Resolve, Recipeint.Address will give

you what you need.

Dmitry Streblechenko (MVP)

-

"cherman" <cherman> wrote in message

news:51B3F062-27D0-4106-973B-871BE93A9D3E@microsoft.com...
> 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)
> >

> >

> >

> > -
> > "cherman" <cherman> wrote in message
> > news:B5F1D65E-1421-495E-B174-D10EF49573BB@microsoft.com...
> > > 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

>

>
>> .
> >
 
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)
>

>

>

> -
> "cherman" <cherman> wrote in message
> news:51B3F062-27D0-4106-973B-871BE93A9D3E@microsoft.com...
> > 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)
> >>

> >>

> >>

> >> -
> >> "cherman" <cherman> wrote in message
> >> news:B5F1D65E-1421-495E-B174-D10EF49573BB@microsoft.com...
> >> > 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
> >
> >
> >> .
> >>


> .
>
 
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)

-

"cherman" <cherman> wrote in message

news:424EB34F-F72F-466C-8357-2A11E2CDA358@microsoft.com...
> 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)
> >

> >

> >

> > -
> > "cherman" <cherman> wrote in message
> > news:51B3F062-27D0-4106-973B-871BE93A9D3E@microsoft.com...
> > > 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)
> > >>

> > >>

> > >>

> > >> -
> > >> "cherman" <cherman> wrote in message
> > >> news:B5F1D65E-1421-495E-B174-D10EF49573BB@microsoft.com...
> > >> > 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
> > >
>> >
>> >> .
> > >>

>

>
>> .
> >
 
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)
>

>

>

> -
> "cherman" <cherman> wrote in message
> news:424EB34F-F72F-466C-8357-2A11E2CDA358@microsoft.com...
> > 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)
> >>

> >>

> >>

> >> -
> >> "cherman" <cherman> wrote in message
> >> news:51B3F062-27D0-4106-973B-871BE93A9D3E@microsoft.com...
> >> > 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)
> >> >>

> >> >>

> >> >>

> >> >> -
> >> >> "cherman" <cherman> wrote in message
> >> >> news:B5F1D65E-1421-495E-B174-D10EF49573BB@microsoft.com...
> >> >> > 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
> >> >
> >> >
> >> >> .
> >> >
> >
> >
> >> .
> >>


> .
>
 
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)

-

"cherman" <cherman> wrote in message

news:FBCDF366-B609-4F9D-B225-4251A8CE682B@microsoft.com...
> 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)
> >

> >

> >

> > -
> > "cherman" <cherman> wrote in message
> > news:424EB34F-F72F-466C-8357-2A11E2CDA358@microsoft.com...
> > > 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)
> > >>

> > >>

> > >>

> > >> -
> > >> "cherman" <cherman> wrote in message
> > >> news:51B3F062-27D0-4106-973B-871BE93A9D3E@microsoft.com...
> > >> > 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)
> > >> >>

> > >> >>

> > >> >>

> > >> >> -
> > >> >> "cherman" <cherman> wrote in message
> > >> >> news:B5F1D65E-1421-495E-B174-D10EF49573BB@microsoft.com...
> > >> >> > 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
> > >> >
>> >> >
>> >> >> .
> > >> >
>> >
>> >
>> >> .
> > >>

>

>
>> .
> >
 
Status
Not open for further replies.
Similar threads
Thread starter Title Forum Replies Date
P finding a folder containing an email item Using Outlook 0
S Finding an inbox email question Outlook VBA and Custom Forms 2
bhamberg Finding a rouge rule... Using Outlook 6
K Outlook.com is not showing, or finding via search, all my Contacts (People) Using Outlook 0
A ScanPST finding errors but no Repair button Using Outlook 2
F Finding Meetings/Tasks in a date range Using Outlook 1
M Finding Tasks in Outlook 365 Using Outlook 1
A "search people" not finding all contacts Using Outlook 17
Commodore Finding items from last 7 days Using Outlook 2
T Need help with finding/updating task Outlook VBA and Custom Forms 1
M Finding a folder by name Outlook 2013 Using Outlook 4
S Finding Distribution List Name Outlook VBA and Custom Forms 3
Ron Kirschner Finding a rule Using Outlook 1
A OL13 Calendar Search not finding most items Using Outlook 15
L Finding deleted contact from shared folder. Exchange Server Administration 1
G finding Outlook 2010 pst in Windows XP Using Outlook 2
N Finding messages by conversation macro Outlook VBA and Custom Forms 1
M Outlook VBA Form not finding FOR LOOP -- Error message Outlook VBA and Custom Forms 2
P Email address auto-completes work fine on laptop, but no longer on desktop Using Outlook 2
S Create Outlook Task from Template and append Body with Email Body Outlook VBA and Custom Forms 4
H Copying email address(es) in body of email and pasting in To field Outlook VBA and Custom Forms 1
A Search folder and move the email Outlook VBA and Custom Forms 0
P VBA to add email address to Outlook 365 rule Outlook VBA and Custom Forms 0
farrissf Outlook 2016 Optimizing Email Searches in Outlook 2016: Seeking Insights on Quick Search vs Advanced Search Features Using Outlook 0
D Delete selected text in outgoing email body Outlook VBA and Custom Forms 0
F Graphics in email / Mac recipient garbled Using Outlook 0
D Outlook VBA forward the selected email to the original sender’s email ID (including the email used in TO, CC Field) from the email chain Outlook VBA and Custom Forms 2
Witzker Outlook 2019 Macro to seach in all contact Folders for marked Email Adress Outlook VBA and Custom Forms 1
E Outlook 365 Save Selected Email Message as .msg File - oMail.Delete not working when SEARCH Outlook VBA and Custom Forms 0
S Email Macros to go to a SHARED Outlook mailbox Draft folder...NOT my personal Outlook Draft folder Using Outlook 2
R Outlook 365 VBA AUTO SEND WITH DELAY FOR EACH EMAIL Outlook VBA and Custom Forms 0
G Print email attachments when hit subfolder Outlook VBA and Custom Forms 1
C Spam Email? Using Outlook 2
G Automatically delete email when a condition is met Outlook VBA and Custom Forms 1
E Save Selected Email Message as .msg File - digitally sign email doesn't works Outlook VBA and Custom Forms 1
S Email was migrated from GoDaddy to Microsoft exchange. We lost IMAP ability Exchange Server Administration 1
R Outlook 365 How to integrate a third-party app with Outlook to track email and sms? Using Outlook 2
S Paperclip icon shows without attachment in email under Sent folder Using Outlook 0
B Outlook 2019 Automatically move email after assigning category Using Outlook 4
Rupert Dragwater How to permanently remove an email address Using Outlook 9
K vba code to auto download email into a specific folder in local hard disk as and when any new email arrives in Inbox/subfolder Outlook VBA and Custom Forms 0
F Auto changing email subject line in bulk Using Outlook 2
F Want to add second email to Outlook for business use Using Outlook 4
kburrows Outlook Email Body Text Disappears/Overlaps, Folders Switch Around when You Hover, Excel Opens Randomly and Runs in the Background - Profile Corrupt? Using Outlook 0
J Outlook 365 Outlook Macro to Sort emails by column "Received" to view the latest email received Outlook VBA and Custom Forms 0
A Outlook 2019 Help with forwarding email without mentioning the previous email sender. Outlook VBA and Custom Forms 0
J Macro to send email as alias Outlook VBA and Custom Forms 0
M Shift Delete doesn't delete email from server Using Outlook 3
K Incorporate selection from combobox into body of email Outlook VBA and Custom Forms 0
L Why are some email automatically going to "archive" Using Outlook 2

Similar threads

Back
Top