我有一个SAS宏变量:
&newlist. = OriginCd DestinCd
我试图获得一个同样的新宏变量,但删除了逗号和空格。所以这个:
%let newlist=%sysfunc(tranwrd(%sysfunc(compbl(&varlist)),%str(,),%str( )));
%let newlist = %sysfunc(compress(&varlist,','));
%let newlist = %sysfunc(tranwrd(&varlist,","," "));
我尝试过以下方法:
api.SetImageFile(img)
对于转换函数,我得到"%SYSFUNC宏函数引用的函数TRANWRD有太多的参数"。但我很确定这是你通常使用它的方式。谢谢!
答案 0 :(得分:2)
尝试:
Debug.Print [Forms]![frmBrowseTickets]![NavigationSubform].Form![cboGoToRecord].Value
我添加了%let varlist=OriginCd,DestinCd;
%let newlist=%sysfunc(compbl(%sysfunc(tranwrd(%quote(&varlist),%str(,),%str( )))));
%put &=newlist;
以防止逗号被解释为参数分隔符,并将%quote()
切换到外部以防止需要另一个compbl()