As a user of iCal (at home) and Outlook (at work) it would be incredibly useful to be able to display my work calendar in iCal (and via a Mobile Me sync, on the iPhone too). I don’t need the ability to sync – it is really just a case of wanting to have my work appointments (past and future) available when I’m not at work.

For example, I might be out somewhere on a Saturday morning (with my iPhone, of course) and I get an email about an Apple event or an Adobe seminar. I want to be able to check immediately what I’m doing on that day so I know whether I can book the day off. And if I’m going to have future appointments available, I might as well have a record of the past available too.

I did a lot of research on this but most of the solutions involve things that I can’t do due to corporate IT restrictions – for example connecting my iPhone to Exchange Server.

The solution that I came up with was to upload my Outlook calendar to Google Calendar and then subscribe to the Google calendar. I actually subscribe to the Google calendar via BusySync – but only because iCal’s support for Google calendar is fairly recent – I could just as easily subscribe straight from iCal.

Subscribing to a Google Calendar via BusySync or iCal is easy. The time-consuming part is linking Outlook to Google Calendar. Although there are Outlook addins to sync with Google (Google Calendar Sync is a popular one), I can’t install them so the process is quite manual…

Google Calendar imports files that are in CSV format and luckily, Outlook can export a calendar to CSV format. In Outlook 2000, this is done from the File > Import and Export menu. Once the export is complete and I have a CSV file on my Desktop, I log into my Google account and import the CSV file into the calendar called Mike Work Schedule – this is the one that BusySync is subscribed to.

Simple? Not quite. This is best illustrated with an example…

The Export Wizard in Outlook, which guides you through the process, allows you to select a range of dates. As I started this import to Google process at the end of April 2008, I decided to include all appointments from 1st January 2008 to 30th May (so that I had a record of all past appointments and some future appointments – my calendar changes regularly so there was no point exporting too far into the future – I decided on 4 weeks-worth of future appointments).

I imported the resulting CSV file into Google Calendar.

Two weeks later (15th May), I decided it was time to update the Google Calendar. I ran the Export Wizard in Outlook and specified 1st May – 15th June. My thinking behind this was that the previous export was done on April 30th and therefore January 1st – April 30th was “historical data”. Although the Google Calendar currently included appointments for 1st May – 30th May, it was likely that some of these had been amended or even deleted in Outlook.

I imported the CSV file into Google Calendar and the result was not good! There were duplicate entries for 1st May – 30th May (as these dates were included in the first import). In addition, some appointments that were no longer in Outlook were still in the Google Calendar. The reason for this is that the import of the CSV is just that – an import, not a sync.

I came up with two ways to solve this problem. One way was to manually remove all entries from the Google Calendar for the period that I was importing prior to running the import – but that was time-consuming and labourious.

The second way (and this is the solution that I have used) is to delete the contents of the whole Google calendar prior to running the import. Consequently, every time I want to update the Google Calendar, I have to export from January 1st to a date that is a few weeks past the current date. Therefore, as I get further into the year, the export takes longer. Once the export process has started, the dialog box in Outlook with the progress bar on it is modal, with no X to close – so the only way to abort is to ALT+Ctrl+Delete.

Rather than having one huge, ever-expanding Google Calendar and an export process that takes longer each time, when I got to the end of 2008, I created a new calendar in iCal called Mike Work 2008 and used Calibrate to move all the events from the Mike Work Schedule calendar to the Mike Work 2008 calendar. This now gives me a historical record of my work appointments for 2008. BusySync is still subscribed to the Work Google calendar and the process continues for 2009.

Resources

To export calendar appointments in Outlook 2000:

  • Select File > Import and Export
  • Select Export to a file
  • Click Next
  • Select Comma Separated Values (Windows)
  • Click Next
  • Select Calendar (the folder to be exported)
  • Click Next
  • Click the Browse button to specify a location and type a name for the CSV file
  • Confirm that you want to export Appointments from the calendar
  • Click Finish
  • Set the date range for the export
  • Click OK

To delete all entries from a Google Calendar

  • Log in to your Google Calendar
  • Click the Settings link on the left hand side – just under the My Calendars section
  • Click the Delete link for the appropriate calendar (on the right hand side). The first calendar that you create is known as the Primary Calendar. If you click the Delete link for this calendar, a message appears asking you to confirm that you wish to delete all events for this calendar. If you click the Delete link for any other Google Calendar, you actually delete the calendar so you would have to recreate it prior to importing the CSV file.

To import a CSV file into a Google Calendar

  • Click the Add link on the left hand side – just below the Other Calendars section
  • Click Import Calendar
  • Click the Choose File button and select the CSV file
  • Select the calendar to import into
  • Click the Import button

BusySync
For information about BusySync, please visit their website. Elaine Giles has written an excellent review of BusySync on her blog.