So how about a bit of coding (since I am pretty much coder). Now when you look through custom code (like Console Application or something that does not do same kind of rendering like default SharePoint to this column) you’ll see how the data is formatted. Lookup fields have selected data formatted something like this: itemID;#Display text;nextItemID;#Next Display Text and so on. At first I thought that it’s simple, just take it as a string and do something to that. After a little planning I realized that this is not the way to go.
Now the nice stuff comes along. After a bit of digging SharePoint API (and Visual Studio Intellisense) I found out that I can get it as SPFieldLookUpValue and SPFieldLookUpValueCollection (moster named classes;). Here is the code sample that saved my day:
SPFieldLookupValueCollection valueItems = (SPFieldLookupValueCollection)listItem["ColumnThatIsMultiLookupField"];
foreach (SPFieldLookupValue valueItem in valueItems)
//access your ID and Text by:
valueItem.LookupValue and valueItem.LookupID
Yet another small and beutiful discovery from SharePoint and it’s goodies.
[Update] BTW. This solution works with PeopleEditor in SharePoint. PeopleEditor uses same kind of structure with selected accounts (userID;#DisplayName).