Adding Holidays to the Outlook Calendar

Explore a few alternatives for adding holidays to your Outlook Calendar.

Sue Mosher

September 9, 2002

4 Min Read
ITPro Today logo in a gray background | ITPro Today

The calendar might say September, but 2003 will be here before you know it. It isn't too early to start thinking about how you and your Outlook users will fill your Calendar folders with next year's holidays. Outlook 2000 users especially should be interested in this topic because the holiday lists that Microsoft provided with that version run only through this year. (Outlook 98 and Outlook 97 ran out of holiday lists earlier.) Let's look at the typical way users add holidays to Outlook, then discuss alternatives you might want to consider between now and New Year's Eve.

The built-in way to add holidays to Outlook is for the end user to choose Tools, Options; click Calendar Options; then click Add Holidays. The Add Holidays to Calendar dialog box lists holidays by country and religion. Users select the check boxes for the country or religion whose holidays they want to import, then click OK to add the selected holidays to the default Calendar folder.

The holiday information that ships with Outlook is in a text file named outlook.hol in Outlook 2002 and outlook.txt in Outlook 2000 and earlier versions. One way to distribute a new list of holidays is to edit this file, adding the new holidays and a heading for them. Put the edited file on the end user's machine (using a logon script, for example), then tell the user to use the method above to select the check box for the heading you added and import new holidays.

The major drawback of this method is that it can't create recurring events. Instead of adding one New Year's Day event that recurs every January 1, it requires you to add a holiday entry for January 1, 2003; January 1, 2004; and so on.

If you want to provide recurring events for certain holidays, you can use a different method that depends on the iCalendar (vCalendar 2.0) standard. This method works only with Outlook 2002 because earlier versions don't support recurring iCalendar events and can't chain multiple iCalendar items together into a single file that Outlook can import.

The first step is to create an individual iCalendar .ics file for each holiday or other event that you want to distribute. To create an .ics file for a recurring event, open the event from your Outlook Calendar folder, choosing "Open the series" when prompted. Then, choose File, Save As to save the item as an iCalendar .ics file.

The next step is to open each saved .ics file in Notepad. An .ics file is nothing more than a text file in a specific format.

Next, open a blank instance of Notepad, in which you'll build one file with the information from all the individual .ics files. Paste the complete text of one .ics file into the blank Notepad file. Delete the END:VCALENDAR line at the end of the file. From the next .ics file, paste only the text from the BEGIN:VEVENT line through the END:VEVENT line. Continue pasting from each .ics file until you get to the last one. For this one, paste everything from BEGIN:VEVENT through the final END:VCALENDAR line at the end. Choose File, Save As to save the file with an .ics extension.

You can now distribute this file to users in an email message or over your intranet. Instruct users to save the file to their local hard drive. (They shouldn't open it directly as they usually do an .ics file.) Next, users must select File, Import and Export in Outlook to run the Import and Export Wizard. They should choose the "Import an iCalendar or vCalendar file (.vcs)" option. After users select the saved file and click OK, Outlook creates an item in the default Calendar for each of the items pasted into the bulk iCalendar file. You can also use this method to distribute company meeting notices and other events in one file that users can import into Outlook 2002.

If you don't have a pure Outlook 2002 environment, I can offer one more method—a custom Outlook form. After you publish this form in your Organizational Forms library, you can use it to distribute holiday information to anyone in your organization. Code behind the form scans a folder in which you've placed the holidays or events you want users to have and puts information about those appointment items into the body of the message. When users get the message, they can press a button to put all those items into their own Calendar folder. This approach doesn't handle recurring items, but you can adapt it to work with all versions of Outlook.

Transmit Holidays Form
http://www.slipstick.com/dev/olforms/holiday.htm

Sign up for the ITPro Today newsletter
Stay on top of the IT universe with commentary, news analysis, how-to's, and tips delivered to your inbox daily.

You May Also Like