1
我已經定義宏變量提取
%let data_names = fuzzy_Data_segment EMWS2.Clus_TRAIN;
然後我已經寫了宏提取並從上面的宏變量作爲打印值:
%macro calling_data;
%do i = 1 %to 2;
%let data_name&i = %qscan(&data_names,&i);
%put &&data_name&i;
%end;
%mend;
%calling_data;
我的宏代碼可以打印名字(fuzzy_Data_segment),但是,它只打印第二個名字的一部分(EMWS2)。我應該怎麼做打印整個第二個名字
您可能會添加一個點沿着默認分隔符(** blank!$%&()* +, - 。/; <^ | **),這就是爲什麼宏未按預期工作。 – kl78
絕對值得一提 - 謝謝@ kl78 – superfluous
您不想在宏語言中使用物理引號作爲%QSCAN的參數。你想使用引用函數%STR() –