I've had a re-think of the varients partly because of this discussion.

They are only to indicate Eliment and shape.

So why don't I store those as a type

Code:
Type switch
  Eliment as integer   'where 1=water, 2=rock etc
  Shape as integer     'where 1=monster, 2=civilian etc
End type
which should tidy things up a bit. in the game at any rate.

One thought tho' - each user will have 25 cards to start with but could gain an unspecified number.

My current plan is a card selector which will act as part of a function to select the card from say BobSmithCardList and return the location to the procedure asking for a card.

one question: I have my type what is the correct way to address it?

Your answer was very clear by the way - thanx

yadda, yadda, yadda... I'd best ShutUp!