Looks like you want to loop over months and years. So use SAS date functions.
%macro update();
%local i j vname;
%do i=1 %to 12;
%do j=9 %to 13;
%let vname=%sysfunc(mdy(&i,1,2000+&j),yymmn6.);
%put i=&i j=&j vname=&vname;
%end;
%end;
%mend;
%update;
Or even:
%let vname = %eval(200000 + 100*&j + &i);
Thank You Guys
My issue is solved now ![]()
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.