| Date: | Sun, 14 Dec 2008 19:16:14 -0500 |
| Reply-To: | "D. Yanosky" <dyanosky@KENNESAW.EDU> |
| Sender: | "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU> |
| From: | "D. Yanosky" <dyanosky@KENNESAW.EDU> |
| Subject: | Macro Do Loop for Discrete Values |
|---|
Hello,
I need to run a macro-valued do loop using discrete values. I found the
following code (paraphrased) on the list-serv, but it does not seem to
work in my case because one of my values contains a decimal. Any idea on
how to make this work?
%LET VARIANCE = %STR(1.5 2 3 5);
%MACRO SIM(ITER=);
%LOCAL I TKN1;
%LET I = 1;
%LET TKN1 = %SCAN(&VARIANCE, &I);
%DO %WHILE (%LENGTH(&TKN1) NE 0);
DATA D;
I = &I;
TOKEN = &TKN1;
RUN;
PROC APPEND BASE=RESULTS DATA=D FORCE;
RUN; QUIT;
%LET I = %EVAL(&I + 1);
%LET TKN1 = %SCAN(&VARIANCE, &I);
%END;
%MEND;
%SIM(ITER=1)
PROC PRINT DATA=RESULTS;
RUN; QUIT;
Thanks,
Daniel
|