2016-11-16 85 views
-1

我有這個條件宏編譯沒有錯誤,但邏輯似乎不工作。如果小時數小於2,應打印「不夠」,如果打印2或更多,則應打印出「足夠的小時數」之類的內容。sas條件宏,邏輯不工作

%macro methours; 

%if hours lt 2 %then footnote 'does not meet requirement '; 

%else 
footnote ' is enough study hours '; 

    %mend methours; 

回答

0

h大於數字2所以%ELSE條款將一直執行。如果HOURS是宏變量,則使用&hours來測試其值。

您可能還需要另一個分號來標記FOOTNOTE語句的結尾。你現在擁有的是宏代碼的一部分。您可以添加%do ... %end以使其更清晰。

%if ... %then %do; 
    footnote ... ; 
%end; 
+0

謝謝我會試試 – kahunabee