I am working with multi-level lists in ALM v11. I have a list which I tie to a user-defined field in the Test module. The field allows users to select multiple items. The intention is for them to select a List header and an Item from that header. The layout looks something like this:

+---List Header 1
| +---Item 1 from Header 1
| +---Item 2 from Header 1
| +---Item 3 from Header 1
| +---Item 4 from Header 1
+---List Header 2
| +---Item 2 from Header 2
| +---Item 2 from Header 2
| +---Item 3 from Header 2
+---List Header 3
| +---Header 3 Item 2
| +---Item 1 from Header 3
| +---No 3 item from Header 3

After the users have made their selections, the items get stored as a text string separated by semi-colons. So far so good. However, they are stored in the field in alphabetical order, i.e:

Item 1 from Header 2;Item 2 from Header 1;List Header 1;List Header 2;List Header 3;No 3 Item from Header 3

Quality Center is able to make sense of this when it displays the list and its contents in the client. However, my problem is that I have to take the string from the field and try to reassemble the correct Headers and relate them to Items in VBA. The Items and Headers do not appear to have any kind of consistency in layout within the stored string. Has anyone else encountered this and perhaps found the answer?