%let n=1;
%macro finddefine(bg_code, s_brc_var, s_brc_code, e_brc_var ,e_brc_code);
%put &n;
%let n=%eval(&n+1);
%let sqlobs=0;
%if &n=10 %then %let sqlobs=1;
%if ^&sqlobs %then %finddefine(&bg_code, &s_brc_var ,&s_brc_code ,&e_brc_var ,&e_brc_code);
%mend finddefine;
%finddefine(bg_code, s_brc_var, s_brc_code, e_brc_var ,e_brc_code);
输出结果:
1
2
3
4
5
6
7
8
9
%macro finddefine(bg_code, s_brc_var, s_brc_code, e_brc_var ,e_brc_code);
%put &n;
%let n=%eval(&n+1);
%let sqlobs=0;
%if &n=10 %then %let sqlobs=1;
%if ^&sqlobs %then %finddefine(&bg_code, &s_brc_var ,&s_brc_code ,&e_brc_var ,&e_brc_code);
%mend finddefine;
%finddefine(bg_code, s_brc_var, s_brc_code, e_brc_var ,e_brc_code);
输出结果:
1
2
3
4
5
6
7
8
9