OL98: Using Address Books in an Outlook Solution
ID: Q193457
|
The information in this article applies to:
SUMMARY
This article provides an overview of data that you have access to in
address books. It also discusses how you can programmatically display an
address book dialog box.
MORE INFORMATION
Accessing Address Book Data
Using the Microsoft Outlook 98 object model, you can access information
that is stored in various address books. For example, you can retrieve
information about entries in the Global Address Book or a user's Personal
Address Book. To see the type of information you have access to, consult
the AddressEntries Object topic in the Microsoft Outlook Visual Basic Help
file (Vbaoutl.hlp). Click the Properties on that page to see the list of
properties available for an entry in an address book.
If you want to access additional entries that are typically available for a
recipient (such as Office, Title or Phone) you can use the Collaboration
Data Objects (CDO) object model.
For more information about accessing these properties using CDO, please see
the following articles in the Microsoft Knowledge Base:
Q179083 HOWTO: Read Address Book Properties in Visual Basic
Q178787 HOWTO: Work with Distribution Lists Using CDO from VB
For more information about getting support for Outlook-related solutions,
please see the following article in the Microsoft Knowledge Base:
Q185243 OL98: Getting Support for Developing Outlook-related Solutions
Displaying an Address Book Dialog Box
The Outlook 98 object model does not support displaying a dialog for a user
to select recipients from an address book. To implement an address book
dialog in your solution, use the appropriate method.
Method 1
The preferred method of displaying an address book dialog is to use the
AddressBook method in the CDO object model. Typically, you would add a
Command Button control to the Outlook form and in the Click event for the
button you would automate the CDO object model from Visual Basic Scripting
Edition (VBScript).
An advantage of using CDO to display the Address Book is that you can
customize the appearance of the dialog box to suit your needs.
For more information about using CDO to display the Address Book dialog box,
consult the CDO documentation at the following Microsoft World Wide Web
site:
http://msdn.microsoft.com/
The AddressBook method documentation is located at the following Microsoft
World Wide Web site:
http://premium.microsoft.com/msdn/library/sdkdoc/cdo/oleobjis_8dri.htm
Method 2
Use a command button control on an Outlook form that is bound to a
recipient field (such as the "To" field). If a command button is bound to a
recipient field, when the user clicks the button, Outlook displays the
address book dialog box and the recipient that the user selects will be
added the field.
NOTE: Although Outlook items other than a mail message do not have
recipients fields, these fields are functional on non-mail forms even
though they are not listed in the set of fields available for that
particular item. You cannot directly access these fields from VBScript,
because the Outlook object model does not consider these to be valid
properties of items that are not MailItems. However, as the steps that
follow illustrate, you can "filter" the data through another valid field to
access the user's selection from VBScript.
Microsoft provides programming examples for illustration only, without warranty
either expressed or implied, including, but not limited to, the implied warranties of
merchantability and/or fitness for a particular purpose. This article assumes that you
are familiar with the programming language being demonstrated and the tools used to
create and debug procedures. Microsoft support professionals can help explain the functionality
of a particular procedure, but they will not modify these examples to provide added
functionality or construct procedures to meet your specific needs. If you have limited
programming experience, you may want to contact a Microsoft Certified Solution Provider
or the Microsoft fee-based consulting line at (800) 936-5200. For more information about
Microsoft Certified Solution Providers, please see the following page on the World Wide Web:
http://www.microsoft.com/mcsp/
For more information about the support options available from Microsoft, please see the
following page on the World Wide Web:
http://www.microsoft.com/support/supportnet/refguide/
The following steps illustrate how to set up a command button on an Outlook
Contact form that will display the address book dialog box. This approach
will work on form types other than a contact form.
- Open a new Contact form.
- On the Tools menu, click Forms, and then click Design This Form.
- Click the (P.2) page of the form.
- Set the Field Chooser to display All Mail Fields and then drag the To
field onto the (P.2) page of the form.
- Right-click To... and click Properties. Change the name
to cmdSelectManager, change the caption to Select Manager..., and click OK. Resize the controls on the P.2 page as
needed.
- On the Field Chooser, click New... and create a user-defined
text field called MyTo.
- Drag the MyTo field onto the P.2 page of the form. Right-click the
text box for the MyTo field and then click Properties. On the Value page
of the Properties dialog box, click to select the Set the initial value of this
field to check box and type the following formula into the text box:
[To]
sELECT the option to Calculate this formula automatically and then
click OK.
- Using the Control Toolbox, drag a command button onto the form. This is
typically named CommandButton1.
- On the Form menu, click View Code. Type the following VBScript code and
then close the Script Editor. Make sure the name of the command button
in code matches the nname of the command button added in Step 8.
Sub CommandButton1_Click()
MsgBox Item.UserProperties.Find("MyTo")
End Sub
To test the form, click the Form menu and then click Run This Form. Click
the P.2 page of the form and click Select Manager. When the dialog box
appears, click to select a name, and click To-> to add the name to the
list of recipients. Click OK. The selected name will appear in the text box
on the form, which is also bound to the To field. The selected name will
now appear in the MyTo field, because that field is set to be based
automatically on the To field. Click the CommandButton1 control to see the
selected manager displayed in VBScript.
NOTE: It is not possible to change any of the labels or strings in this
Address Book dialog box, as you can with the dialog box created using CDO.
REFERENCES
For more information about creating solutions with Microsoft Outlook 98,
please see the following articles in the Microsoft Knowledge Base:
Q180826
OL98: Resources for Custom Forms and Programming
Q182349
OL98: Questions About Custom Forms and Outlook Solutions
Additional query words:
OutSol OutSol98
Keywords : kbdta OffVBS
Version : WINDOWS:
Platform : WINDOWS
Issue type : kbhowto
Last Reviewed: June 21, 1999