I do something similar, but I user the userr1 variable, so on the custom menus I wrote I have a setup an option with a line containing the following
[1: 100]^C^C_setvar userr1 100
I then insert the blocks setting the scale as per the userr1 value, as per this code.
[62(P002,Switched Socket)]^c^c(setq old (getvar "clayer"))$M=$(if,$(=,$(getvar,tilemode),0),_pspace,_r) _attdia 1 _-layer _t;_62_SM_POW;_m _62_SM_POW;_c BLUE _62_SM_POW;;_-insert "P002" _xscale $(if,$(=,$(getvar,tilemode),0),1,$(getvar,userr1)) _yscale $(if,$(=,$(getvar,tilemode),0),1,$(getvar,userr1)) _zscale $(if,$(=,$(getvar,tilemode),0),1,$(getvar,userr1)) \\_-layer _s !old;;