Shane,
Your code assumes @Error not to be thrown from a prior function. Better to clear it before entering your loop just to be sure. A lesson may be gleened from:
Structured EnumKey Loop /w a single EnumKey
_________________________
Give a man a fish and he will be back for more. Slap him with a fish and he will go away forever.