cant you just add the value to the enum itself? dunno if you can in VB.NETbut in C# you can do this:
enum States { value1 = 1, value2, value3, value4, value1 = "string", value2 = "string", value3 = "string", value4 = "string" } States state = States.Value1; ConsoleWriteLine((string)state); dunno if it works, didnt try it, but you get the idea.