It can be exceedingly difficult to get corporate Exchange Server contacts to an iPhone if you don’t have ActiveSync access to the Exchange Server.
In this setting you can’t sync work Contacts with MobileMe (you used to be able to, but no longer. I’ve never heard an explanation of why Apple pulled this capability). I don’t think you can use iTunes sync either, though I don’t want to sync my iPhone at work anyway.
There are several software solutions that claim to be able to extract these Contacts. I’ve tried most of them – they were either buggy or they couldn’t resolve EX style corporate email references. In Outlook 2003 you could fairly readily export Contacts as vCards, but when I do that with Outlook 2007 I get weird formatting problems. (Of course this is export, not sync, but we can’t be picky here).
The only solution I’ve gotten to work thus far is to put my corporate contacts into a PST file, take them home, put them in non-Exchange Outlook at home, and sync to MobileMe. 
I sync my OS X Address Book to MobileMe as well, then sync my iPhone to OS X Address Book. That gives me work and home addresses both on my iPhone, on my desktop machines, and on my laptop. 
Here are the details of the initial setup. Once you’re done with that maintenance isn’t too bad.
- The “source of truth” for the work contacts is corporate Outlook, the “source of truth” for my home contacts is OS X Address Book.
- This is not synchronization. It is publishing one way. Updates after initial sync are discussed below.
There are two sources of data that will sync to MobileMe.
- Outlook 2003 home: Starts with an empty Contacts Folder. An external data folder (PST) holds material copied from work including all Contacts.
- OS X 10.5 Address Book: Has several Groups, but one Group has no members. It is is called Contacts_Work. (Warning: If you’re cleaning out a Group in Address Book it’s easy to “remove from group” when you want to delete.)
Step one: Sync OS X Address Book to MobileMe
- Sync OS X Address Book to MobileMe.
- Sync iPhone to OS X Address Book through iTunes.
Step Two: Sync Outlook to MobileMe
- Open MobileMe Control Panel.
- Set to Sync with Outlook.
- Click Sync now. On a first sync you will be asked if you want to overwrite the computer or MobileMe. Choose to overwrite the computer.
- When you are done you will see an Outlook “folder” for each "OS X Group” beneath the original (empty) Outlook Contacts folder.  The one called Contacts_Work will be empty.
Step Three: Copy work Contacts into empty Contacts_work
- Move (or copy) Contacts from the work PST file to Contacts_Work. I select all, then right click and drag.
- Clean up the Contacts_Work folder. Remove lists, etc.
- Sync to MobileMe. Now Outlook and MobileMe are done.
Step Four: Finish Syncs
- Sync OS X Address Book to MobileMe
- Sync iPhone to OS X Address Book  via iTunes.
- Sync to additional OS X machines as desired.
Addendum - Updates
This is all 1 way, so there’s no sync back to the office. This works fairly well for me however. My corporate contacts don’t change that much, but each time I do an update like this I record the date. Then contacts added or modified after that date are periodically carried home, used to update Outlook, and then I sync as above.
Problems to expect
Synchronization is Hell, but even messaging across databases is Heck. There are attributes and properties in Outlook that Address Book can’t support. There’s location information in Address Book Outlook can’t support. An Address Book contact can belong to many groups, an Outlook contact can belong to only one folder. I try to edit the Work Contacts only in Outlook, everything else only in Address Book.
- The MobileMe Massacre begins
- Work home contact integration- Outlook to Google to OS X Address Book (EX problem)
- Project Contacts- Now mixing Outlook-Exchange, PST file, Outlook-Home, MobileMe Sync … – an earlier version of this post.
- Project Contacts: Integration across iPhone, Google and whatever
- Google saves my iPhone
- gSyncit for Outlook 2007 to Google Calendar and Contacts Sync
- MobileMe, Microsoft Outlook, Exchange, iTunes and yes, sync Hell
- MobileMe syncs with Outlook (yes, once it did. Apple disabled this Exchange sync.)
-- Footnotes --
 I’ve not tried synching my iPhone via iTunes to two machines at home – XP/Outlook and OS X/Address Book. I just didn’t think of that one until I wrote this post! I know there’s some multi-machine sync capability with the iPhone.
 I also sync my iPhone to Google by ActiveSync (Exchange server) protocol. So I have my Google contacts on the iPhone too. There’s a ton of duplication on the phone between the OS X source and the Google source. Resolving that is a future task.
 The symmetry is misleading. A single Address Book entry can belong to multiple Address Book groups, but an Outlook Contact can only belong to one folder. (Acyclic Graph vs. Tree)
 This is what I currently do. I may try just synching wirelessly to MobileMe.
 I assume Contacts that belong to several OS X Groups are duplicated when they go to Outlook. I wonder why they don’t proliferate, breeding with each sync.