Ich habe ein Makro, das einen Zeitstempel erstellt (an Ausgabedateinamen anhängen). Anstatt sich jedoch daran zu erinnern, welcher Makrovariablen der Makro den Wert zuweist, würde ich lieber eine Makrovariable dem Ergebnis des Makros zuweisen (wenn das nicht kreisförmig genug ist).Wie weisen Sie das Ergebnis einer Makrofunktion einer Makrovariablen in SAS zu?
%let tms= %tms();
Dies ist das aktuelle Makro ....
%macro tms ;
%* Create a Timestamp ;
%let tms_date= %sysfunc(date(),yymmdd10.) ; %* Todays date ;
%let tms_time= %sysfunc(time(),time.) ; %* Current Time ;
%* Format mmddyyhhmmss ;
%let tms=_%scan(&tms_date,1)%scan(&tms_date,2)%scan(&tms_date,3)%scan(&tms_time,1,:)%scan(&tms_time,2,:)%scan(&tms_time,3,:) ;
%mend ;
Wie zitieren Sie diese es funktioniert? Würde ich auch nur "% let tms =" aus dem Makro entfernen?
Würde das gleiche Zitat auch für die folgende ODS-Zuweisungsanweisung funktionieren?
ods Tagsets.excelxp file="&outname.&tms..xml" style= Styles.XLsansPrinter ;
Vielen Dank für die Zeit nehmen ....