繁体   English   中英

如何使用宏在SAS中获取当前月份名称和年份

[英]How to get current month name and year in SAS using macro

我正在 SAS 中触发一封邮件,该邮件应在邮件中保存当前月份和年份

如何创建宏变量&month &year使得

  • &month应该显示十月
  • &year应该显示 2020

目前使用

%let sysmonth= %sysfunc(month("&sysdate"d));
%let sysyear= %sysfunc(year("&sysdate"d));

%put &sysmonth &sysyear;

但我得到了月份的数字,但我想要月份的文字

使用PUTN与格式MONNAME

%put %sysfunc(PUTN("&sysdate"d, monname.));
------ LOG ------
October

%SYSFUNC有一个可选的第二个参数来指定格式。 在这里的特定情况下,您实际上并不需要它 - Richard 的 PUTN 也能正常工作 - 但如果您确实想要一个函数来运行,这里是那个例子 - 这里的例子是如果你想要一个不同的月份当前的一个,但任何功能都是这样工作的。

%let sysmonth= %sysfunc(intnx(month,"&sysdate"d,-1),monname.);
%put &=sysmonth;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM