Use one Start and End time for all Outlook Appointments

Last reviewed on July 11, 2013   —  9 comments

To create a custom form that has a preset start and end time, you need to open the form in design mode, add a little VBScript then publish the form. You can then either set the form as your default appointment form or select it from the New Items menu.

To use the form, select a date in the calendar and click the New button.

To create the form:

  1. Open a new Outlook Appointment form
  2. If the Developer ribbon is not visible, go to File, Options customize Ribbon and add a check to enable the Developer ribbon
  3. On the developer ribbon, click Design This Form
  4. click the ViewCode button to open the Script editorClick View Code button to open the Script Editor. (It looks like Notepad.)
  5. Paste the Script into the editor window and close the editor.
  6. Test the form by clicking the Run This Form button
  7. Publish it by clicking Publish
  8. Enter a name for the form.
  9. Close the form and return to Outlook

To set the form as the default for the folder, right click on the folder and choose Properties. Select the form from the 'When posting, use form' dialog.

Function Item_Open ()

Dim SelCalendarDate
SelCalendarDate = DateValue(Item.Start)
Item.Start = SelCalendarDate &" "& TimeValue("8:00 AM")
Item.End =   SelCalendarDate & " "& TimeValue("6:00 PM")

End Function

About Diane Poremsky

Diane Poremsky
A Microsoft Outlook Most Valuable Professional (MVP) since 1999, Diane is the author of several books, including Outlook 2013 Absolute Beginners Book. She also created video training CDs and online training classes for Microsoft Outlook. You can find her helping people online in Outlook Forums as well as in the Microsoft Answers and TechNet forums.

Please post long or more complicated questions at Outlook forums by

9 responses to “Use one Start and End time for all Outlook Appointments”

  1. Denise Stewart

    Thanks for the information it helped a little, but can you tell me why I can't modify the fields of the Appointment form in Design Form mode. If I choose the Contacts form I am able to modify the fields. My goal is to add additional fields to the like (Event Type and Recruiter to the New Appointment Form.

    1. Diane Poremsky

      for whatever reason, they designed the appointment form with the first page static. You can hide that page and create a new one on P.2 with all of the fields or add the fields you need on p.2 and use 2 pages.

  2. Jason burds

    When I try to do this I get a "Expected end of Statement Line No:5" when I try to run this.

    Any ideas?


  3. Diane Poremsky

    The code was messed up -it should have & and " instead of the html code for those characters. I fixed it. Sorry about that.

  4. Jason burds

    When I do this code, I also get an error when I make a new Email.
    If TypeName(m_Inspector.CurrentItem) = "AppointmentItem" And _
    m_Inspector.CurrentItem.AllDayEvent Then

    is from your other script to add reminders to all day events.

    I think its from changing my default Appointment form.

    1. Diane Poremsky

      What does the error say?

  5. Jason burds

    Run-time error '438: Object doesn't support this property or method.

    When I click debug is has "If TypeName(m_Inspector.CurrentItem) = "AppointmentItem" And _
    m_Inspector.CurrentItem.AllDayEvent Then" highlighted.

    1. Diane Poremsky

      did you put the code in custom form or in the VB Editor? It belongs in a custom appointment form. A ready to use form is here - - you'll need to publish it since it has code in it.

  6. Diane Poremsky

    For whatever reason, the other code is failing. I updated the code so it checks to see if the new item is an appointment and exits if it's not an appointments.

Leave a Reply

If the Post Comment button disappears, press your Tab key.

This site uses XenWord.