Thread: Enum Names
View Single Post
  #6   Report Post  
Posted to microsoft.public.excel.programming
NickHK NickHK is offline
external usenet poster
 
Posts: 4,391
Default Enum Names

As Bob says, these do not really exist in compiled code, as they have been
replaced with their values, the same as a Const is.
Not sure if this is strictly a correct example, but..
You can use them when you set a value :
ActiveCell.Borders(xlEdgeBottom).LineStyle = xlDashDot
but when retrieving the value :
?ActiveCell.Borders(xlEdgeBottom).LineStyle
4

not xlDashDot

Using Chip's method, you are querying the Type Library for the enum's value,
not the compiled code.

You can link the enum values to an arry of string though

Dim MyEnumString(1 to 2) as string

MyEnumString(firstKey)="firstKey"
MyEnumString(secondKey)="secondKey"

as long as you enum is compiled before your array elements are assigned.
Depends why you need to do this, as the actual name of the enum element does
not have any real meaning as it's only to aid your memory. It's the numeric
value that matters.

NickHK

"Goofy" wrote in message
...
how can I retreive the string value of the enum internal identifier, in
other words if I have a value of 2 I want the corresponding "secondKey"


Public Enum MyEnum

firstKey = 1
secondKey = 2

End Enum