All Outlook Appointments to ical or vcal

We are migrating all of our users completely off of our exchange server pretty soon here to Oracle-based calendar.

I am trying to figure out a way to export, convert, and then import entire calendars instead of doing it one appointment at a time.  Outlook 2003 will only export to PST, CSV, TXT when you try to do the entire calendar.  You can open an appointment and do a "Save As" as to a iCal or vCal format, but that could be inefficient and time consuming for those that have a large amount of appointments.  For those of you that don't know, Oracle calendar will only import iCal or vCal appointments.

Ideally, I would like to be able to export the entire calendar into a file such as CSV or TXT and be able to map certain fields.  Then run that file through a utility that converts it into iCal or vCal, and finally import all of that into the Oracle calendar.

I've tried Outport, OutlookExport, and a few others but they generally did not work very well.  I'm looking for something that's pretty reliable and is not going to cause any errors.

Any ideas or alternative suggestions?  Thanks!
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

David LeeCommented:
Greetings, dpsit.

I'm confused.  You said "Outlook 2003 will only export to PST, CSV, TXT when you try to do the entire calendar" as if that's not what you want, then say "Ideally, I would like to be able to export the entire calendar into a file such as CSV or TXT and be able to map certain fields".  The two statements appear to contradict each other.  I'm also confused about the title which says "Appointments to ical or vcal" although you say you want CSV or TXT.  Can you clarify?

dpsitAuthor Commented:
Hah, sorry about that, that is worded pretty poorly.

"Ideally, I would like to export the entire calendar into a file such as CSV or TXT" (yes, this is a capability and I have done this)

"and be able to map certain fields" (another capability that Outlook already has)

Where I need help is to take that CSV or TXT and convert it to one or many iCal or vCal files.  I was quick to type the title... but generally I want all of a user's outlook appointments to end up as iCal or vCal without having to save them separately (which is a pain)

Let me know if you need anything else.  Thanks!
David LeeCommented:
I understand.  The code below will do exactly what you've described.  Follow these instructions to use it.

1.  Start Outlook
2.  Click Tools->Macro->Visual Basic Editor
3.  If not already expended, expand Modules and click on Module1
4.  Copy the macro and paste it into the right-hand pane of the VB editor window
5.  Edit the code as needed.  I placed a comment line immediately before where soemthing needs to change
6.  Click the diskette icon on the toolbar to save the changes
7.  Close the VB Editor
8.  Click Tools->Macro->Security
9.  Change the Security Level to Medium
10.  Go to Contacts and click on a contact.
11.  Click on the calendar folder and run the macro.  It'll export all the appointments on the calendar to iCal files.

Sub ExportToiCal()
    Dim olkFolder As Outlook.Items, _
        olkAppointment As Outlook.AppointmentItem, _
        intCount As Integer
    intCount = 1
    Set olkFolder = Application.ActiveExplorer.CurrentFolder.Items
    For Each olkAppointment In olkFolder
        'Edit the path and filename on the following line as needed
        olkAppointment.SaveAs "C:\eeTesting\Appointments\Appt-" & intCount & ".ical", olICal        'or olVcal if you prefer
        intCount = intCount + 1
    Set olkAppointment = Nothing
    Set olkFolder = Nothing
    MsgBox "All done."
End Sub
David LeeCommented:
Any update, dpsit?

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.