Hi.
I have a macro variable that is datetime. How can I remove the time stamp from the variable in a new let-statement?
I have this macro:
%let date0='22jan2018:0:0:0'dt;
I want to make a new macro like this:
%let date1=datepart(&date0.);
I have tried statements like this, but I can't get it to work:
%let date1=%sysfunc(datepart(&date0.))
Does anyone know how to convert &date0. into just a date-variable?
It does work!
%let date0='22jan2018:0:0:0'dt;
%let date1=%sysfunc(datepart(&date0.));
%put &date1.;
See the log:
24 %let date0='22jan2018:0:0:0'dt; 25 %let date1=%sysfunc(datepart(&date0.)); 26 27 %put &date1.; 21206
21206 is the raw numeric value for today's date, and can be used as-is in calculations and comparisons.
You only need to use a format for displaying the value.
It does work!
%let date0='22jan2018:0:0:0'dt;
%let date1=%sysfunc(datepart(&date0.));
%put &date1.;
See the log:
24 %let date0='22jan2018:0:0:0'dt; 25 %let date1=%sysfunc(datepart(&date0.)); 26 27 %put &date1.; 21206
21206 is the raw numeric value for today's date, and can be used as-is in calculations and comparisons.
You only need to use a format for displaying the value.
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!
Check out this tutorial series to learn how to build your own steps in SAS Studio.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.