首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将宏变量格式化为comma6

将宏变量格式化为comma6
EN

Stack Overflow用户
提问于 2015-01-15 08:34:20
回答 2查看 723关注 0票数 2

%let vc = 12025;

理想的输出( comma格式)是12,025

%put %sysfunc(put(&vc,comma6.))似乎不起作用。错误如下。

ERROR: The PUT function referenced in the %SYSFUNC or %QSYSFUNC macro function is not found.

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-01-15 09:37:44

PUT函数在%SYSFUNC中不可用,但是可以对数值使用PUTN,对于字符可以使用PUTC

试着:

代码语言:javascript
复制
%put %sysfunc(putn(&vc,comma6.));
票数 7
EN

Stack Overflow用户

发布于 2015-01-15 15:56:00

使用putn()函数格式化%sysfunc()返回的值的另一种方法是使用%sysfunc()的鲜为人知的第二个参数,如下所示:

代码语言:javascript
复制
%let vc = 12025;
%put %sysfunc(sum(&vc),comma6.);

第二个参数将格式应用于由%sysfunc()调用的任何函数返回的结果。在上面的例子中,我只是将一个数字本身相加,它实际上只是返回这个数字。如果它是一个字符值,我可以使用cats()函数。

值得注意的是,如果您想执行以下操作,它将简化代码:

代码语言:javascript
复制
%put %sysfunc(putn(%sysfunc(date()),date9.));    

它现在是:

代码语言:javascript
复制
%put %sysfunc(date(),date9.);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27959405

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档