我有这个代码,我根据今天的日期为日期创建一个proc格式语句。 今天之前的任何日期都是红色,未来的任何日期都是绿色。但是这是一个proc报告我在调用此声明,并且在某些情况下日期有空白值。因此,我希望不包含日期的字段为白色。
data _null_;
sdate = date ();
format sdate date9.;
call symput('sdate',sdate);
run;
proc format;
value closefmt
low - &sdate ='red'
' ' = 'white'
&sdate - high = 'green';
run;
它不喜欢''= white并且不接受null。 任何帮助,将不胜感激。 提前谢谢。
答案 0 :(得分:0)
对数字变量中的缺失值使用单点:
proc format;
value closefmt
low - &sdate ='red'
. = 'white'
&sdate - high = 'green';
run;
/* test code */
data indata;
d = .; output;
do i=-3 to 3;
d = today()+i;
output;
end;
run;
data _null_;
set indata;
format d yymmdds10.;
length color $10;
color = put(d, closefmt. - L);
putlog d color;
run;