Microsoft KB Archive/173589
Article ID: 173589
Article Last Modified on 2/12/2007
- Microsoft Outlook 97 Standard Edition
This article was previously published under Q173589
This article describes how to create a Categories button on a Microsoft Outlook custom form page.
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 Partner or the Microsoft fee-based consulting line at (800) 936-5200. For more information about Microsoft Certified Partners, please visit the following Microsoft Web site:
For more information about the support options that are available and about how to contact Microsoft, visit the following Microsoft Web site:
Standard Outlook forms, such as a Contact or Task form, have a Categories text box that allows you to type in words to categorize Outlook items. These standard forms also contain a button that displays the Edit Categories dialog box. With this dialog box, you can select one or more categories from a list instead of manually typing the category names.
If you create a custom Outlook form and drag the Categories field to the form from the Field Chooser, a label and text box are placed on the form. It does not automatically create a button to provide the same functionality as the Outlook default form page.
You can use the following steps as a guideline for creating a command button that mimics a Categories button on a custom form page.
Steps To Create a Categories Command Button
- Open a new, standard Outlook form, such as a Contact form.
- On the Tools menu, click Design Outlook Form.
- Click the (P.2) tab.
- On the Form menu, click Display This Page.
- From the Field Chooser, drag the Categories field to the form page.
- Click in a blank area of the form page to cancel the selection, and then click the Categories label to select it.
- Press the Delete key to delete the label from the form.
- From the Control Toolbox, drag the CommandButton control onto the form page where the Categories label was located.
You will most likely need to resize or position both the command button and the Categories text box.
- Right-click CommandButton1, and then click Properties.
- Click the Display tab, and then change the Name property to "cmdCategories" (without the quotation marks).
- Change the Caption property to "Categories..." (without the quotation marks), and then click OK.
- On the Form menu, click View Code.
In the Script Editor, type the following Microsoft Visual Basic Scripting Edition (VBScript) code:
Sub cmdCategories_Click() Set ai = Item.Application.ActiveInspector Set mb = ai.CommandBars.Item("Menu Bar") Set cmd = mb.Controls("Edit").Controls("Categories...") cmd.Execute End Sub
- On the File menu, click Close.
- On the Tools menu, click Design Outlook Form to exit form design mode.
- Click Categories, and select a few categories.
The text box should reflect the chosen categories because it is bound to the Categories field by default.
Visual Basic for Applications Automation Solution
If you are creating a Microsoft Visual Basic or Microsoft Visual Basic for Applications solution that automates Outlook from another application, the following Sub procedure illustrates how you can display the Categories dialog box using Visual Basic code. It assumes you already have an Outlook item displayed so that the Categories command is available on the Edit menu of the form.
NOTE: You must reference the Microsoft Outlook 8.0 Object Library and the Microsoft Office 8.0 Object Library for this example to work.
Sub EditCategories() Dim ol As New Outlook.Application Dim cb as Object Set cb = ol.ActiveInspector.CommandBars cb.Item("Edit").Controls("Categories...").Execute End Sub
For more information about creating solutions with Microsoft Outlook 97, please see the following articles in the Microsoft Knowledge Base:
Additional query words: OutSol OutSol97
Keywords: kbhowto kbprogramming KB173589