Returning to OP question, is simple:
http://forum.mikrotik.com/t/concatenate-values-to-create-variable-name/151793/2
The soluction is:
:global variablename “test”
Create or set a value (on same command)
[:parse “:global $variablename "REX1"”]
:put $test
Set a value (or simply apply previous command)
[:parse “global $variablename;:set $variablename "REX2"”]
:put $test
For read the variable inside another declared variable:
:global testx
[:parse “global $variablename;:global testx $$variablename”]
:put $testx