Interesting, but beyond my version. If you're able to access the members of a custom group, wouldn't those members need either html or hex color values or vb constants (such as vbgreen) rather than just green. And wouldn't your reference have to be one less than the number of elements in the group? You have index = 4 but only have 2 elements in that group. However, I suspect that's not the case and what I'm reading is just an example. From what I've read, the defined palette is saved with the form when it's created. If you want to use a different palette, AFAIK, you have to modify it in code first. If this is just a user option thing and has nothing to do with having different palettes available for them to design, then why not include all the colors in one palette and use a function with select case block? Rather than altering code each time a user is added to the group (or changes their mind) have the options in a table of user preferences.
The more we hear silence, the more we begin to think about our value in this universe.
Paraphrase of Professor Brian Cox.