BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
CamannC
Calcite | Level 5

Hi,

I'm not sure why this is not giving me the right date.  I'm trying to create a macro from to pull 'February' as the "rolling_month", but "rolling_month" comes out at January (even when I change the -11 to something else, like 13 or 5.

data date;

date="1FEB2013"d;  *This is the date of run (regarding data up until month before date of run);

date_end=intnx("month", date, -1, "end");

rolling_month=put((month(intnx("month", date_end, -11, "begin"))), $monname.);

rolling_month_end=put((intnx("month", date_end, -11, "sameday")), $yymmn6.);

format date date_end date9.;

run;

proc print data=date;

run;

Any help would be appreciated!!  Thanks in advance.

1 ACCEPTED SOLUTION

Accepted Solutions
allurai0412
Fluorite | Level 6

hi,

Delte extra ....'month' in the following  line and check/...

rolling_month=put((intnx("month", date_end, 1, "end")), $monname.);


This gives....rolling_month ........February...


Regards


ALLU

data date;

date="1FEB2013"d;  *This is the date of run (regarding data up until month before date of run);

date_end=intnx("month", date, -1, "end");

rolling_month=put((intnx("month", date_end, 1, "end")), $monname.);

rolling_month_end=put((intnx("month", date_end, -11, "sameday")), $yymmn6.);

format date date_end date9.;

run;

proc print data=date;

run;

View solution in original post

2 REPLIES 2
allurai0412
Fluorite | Level 6

hi,

Delte extra ....'month' in the following  line and check/...

rolling_month=put((intnx("month", date_end, 1, "end")), $monname.);


This gives....rolling_month ........February...


Regards


ALLU

data date;

date="1FEB2013"d;  *This is the date of run (regarding data up until month before date of run);

date_end=intnx("month", date, -1, "end");

rolling_month=put((intnx("month", date_end, 1, "end")), $monname.);

rolling_month_end=put((intnx("month", date_end, -11, "sameday")), $yymmn6.);

format date date_end date9.;

run;

proc print data=date;

run;

CamannC
Calcite | Level 5

It worked!!  Thanks allurai!

sas-innovate-wordmark-2025-midnight.png

Register Today!

Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.


Register now!

How to Concatenate Values

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1139 views
  • 0 likes
  • 2 in conversation