How to find out no. of business days in a month using
macros.???(excluding weekends and holidays).
Answers were Sorted based on User's Feedback
Answer / aaa
%MACRO WORKDAYS(START,END);
DATA _NULL_;
FORMAT A B DDMMYY10.;
A = %SYSFUNC(INPUTN(&START,DDMMYY10.));
B = %SYSFUNC(INPUTN(&END,DDMMYY10.));
COUNT=0;
DO I = A TO B;
IF WEEKDAY(I) IN (2,3,4,5,6) THEN
COUNT=COUNT+1;
END;
PUT 'NUMBER OF WORKING DAYS BETWEEN ' A 'AND ' B '= ' COUNT;
RUN;
%MEND;
%WORKDAYS(01/10/2014,31/10/2014);
| Is This Answer Correct ? | 7 Yes | 0 No |
Answer / oanhntt
first of all, identify the last day of month (using this
intnx('month',d,1)-1). after that make a loop through 1 to
end of month, check if day in loop is weekend or not, using
another variable to count this number.
Regarding to the holidays, except some popular holidays which
I suggest using an external file/dataset to track it, use
this file to identify holidays.
| Is This Answer Correct ? | 1 Yes | 3 No |
Difference between sum function and using “+” operator?
HOW MANY WAYS YOU CAN RETRIEVE THE DATA FROM ORACLE TABLES? WHAT IS ORACLE CLINICAL? HOW IT IS USEFUL?
3 Answers Accenture, Novartis,
how to remove the duplicates by proc sql?
What are the data types does SAS contain?
How would you determine the number of missing or nonmissing values in computations?
How would you identify a macro variable?
What is the role of administrative users? : sas-grid-administration
How many versions came upto now in SAS?
What do you feel about hardcoding?
In the flow of DATA step processing, what is the first action in a typical DATA Step?
Explain what is data step?
what is the use of LRECL option.