This is a common way to structure a simulation. You don't need to use any macro variables. In the following example, I use PROC PLAN to create a SAS data set that contains 36 sets of parameter values. I have three parameters for each run. I use the DO DATA loop in SAS/IML to read a next set of parameter values and then run the simulation with that set of parameters: /* Hierarchical design example from http://support.sas.com/documentation/cdl/en/statug/66859/HTML/default/viewer.htm#statug_plan_examples02.htm*/ proc plan seed=17431; factors Houses=3 Pots=4 Plants=3 / noprint; output out=Params; run; proc iml; use Params; do data; read next var _NUM_; /* run simulation HERE with these parameter values */ *print Houses Pots Plants; end; close Params; Here is an article about the DO DATA loop. The book Simulating Data with SAS contains many tips and techniques for efficient simulation with SAS/IML.
... View more