The following statement is for current year
%let Yr = %sysfunc(Year(%sysfunc(today())));
What would be the statement for previous year or next year?
I tried the statement below, but did not work.
%let PrevYr = %sysfunc(Year(%sysfunc(today())))-1;
If you want the macro processor to preform arithmetic you have to ask it.
%EVAL() will do integer arithmetic, which is all you need.
%let PrevYr = %eval(&yr-1);
If you need floating point values use %SYSEVALF().
If you want the macro processor to preform arithmetic you have to ask it.
%EVAL() will do integer arithmetic, which is all you need.
%let PrevYr = %eval(&yr-1);
If you need floating point values use %SYSEVALF().
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
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.