Results 1 to 1 of 1

Thread: [FAQ's: OD] How do I customize an Outlook Form?

  1. #1

    Thread Starter
    Super Moderator RobDog888's Avatar
    Join Date
    Apr 2001
    LA, Calif. Raiders #1 AKA:Gangsta Yoda™

    [FAQ's: OD] How do I customize an Outlook Form?

    You can custom Forms inside Outlook and/or enhance the default Outlook Form actions. You can not create an Outlook Form from scratch. Also, you can not customize the Notes form.

    You can hide/show tabs, add/remove controls etc. Note: when adding non-standard Outlook controls to a form be sure to test it out to make sure its compatible with Outlook or when publishing or distributing a custom form you may need to distribute any custom control used on the form too.

    Step 1:
    In Outlook you can go to the menu - Tools > Forms > Design a Form... > then choose a form from the "Look in:" combobox. We will base a custom form off of the Appointment Item form as seen in Fig. 1.

    Fig. 1

    Step 2:
    Now we can start adding controls, binding to fields, and adding VB Script code. Lets make sure the control toolbox is visible and the field chooser window (Fig. 2).

    Fig. 2

    Step 3:
    Next we will hide the first tab since we can not customize it and we will make tab P. 2 visible. With tab P.2 active we will click on the Form menu and click "Display This Page" (Fig. 3a). Then we click on tab 1 to make it active and click on the Form menu again and click "Hide This Page" (Fig. 3b).

    Fig. 3

    Step 4:
    We will want to rename our "P.2" page to something more relevant to its proposed use. So lets rename the tab from "P.2" to "Time Entry". Make "P.2" page active by clicking on the "P.2" tab (Fig. 4a). Then click on the Form > "Rename Page..." (Fig. 4b) menu item.

    Fig. 4a

    Fig. 4b

    Step 5:
    Enter in "Time Entry" into the Rename Page dialog box and click OK (Fig. 5a). Then you will see the page rename apply (Fig. 5b).

    Fig. 5a

    Fig. 5b

    Step 6:
    Now lets add some controls on to our Form from the Control Toolbox. We will add some Buttons, Combo Boxes, Labels, and Text Boxes. When we add each control we need to decide if we want to bind a Field or use it unbound but for this example I am going to use Bound Fields from the Choose Field button on the controls property dialog window. Bound fields tell Outlook to store the data for the concerned control/form into the fields for the Form in an Outlook folder. So lets right click on a control and click Properties (Fig. 6a). Then clickthe Choose Field button on the Value tab and select a default Outlook field to bind it to like the "Start" field (Fig. 6b). If you like you can enter in a semi-colon separated values list to populate a combo box's dropdown list. The control's Property dialog window is where we can give our controls a Name, set any display formats and validation rules (if any), etc.

    Fig. 6a

    Fig. 6b

    Step 7:
    Lets add some VB Script code to our buttons. Click Form > "View Code..." menu item (Fig. 7a) and display the Script Editor. I added cde for the Save, Delete, and Close buttons (Fig. 7b).

    Fig. 7a

    Fig. 7b

    Step 8:
    Now that we added our controls lets test the Form out by previewing it or Running it. Click Form > "Run This Form" menu item (Fig. 8a) and display our completed Form (Fig. 8b).

    Fig. 8a

    Fig. 8b

    Step 9:
    Next we will want to Publish our custom Form so it can be used by to create and view items by us or others if running in an Exchange environment. See the Office Development FAQ - "How do I Publish my custom Form?" for further details.

    Step 10:
    After our custom Form is finished and Published we will want to set it as the default form for use in a particular folder for ease of use and viewing of items created with our Form. See the Office Development FAQ - "How do I set the Default Form for a folder?" for further details.

    For even more information on Outlook Forms, see the Microsoft Knowledge Base Article:

    Last edited by RobDog888; Aug 23rd, 2006 at 12:58 PM.
    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