Hi Bart :)) >} > # Bad substitution >} > echo ${${testing[1]}_VALUE} >} echo ${(e):-\$${testing[1]}_VALUE} >} The :-\ is a smiley that means "maybe there ought to be a neater way". >There's also > echo ${(P)${:-${testing[1]}_VALUE}} >but I don't know whether that can be considered "neater." Obviously, the Zefram's solution, which has a smiley XDDD Seriously: why am I having the 'bad substitution' error? What am I doing wrong?. This interest me more than the solution. And thanks a lot for your solution too :)) Raśl