Please try the macro function if you find suitable.
'if CountI=0 then CountI=1
'Test1= DateSerial(year(StrDate) ,month(StrDate),datepart("d",StrDate))
DtPartFlag=datepart("d",StrDate) '' to enter in for loop
'for i= 0 to CountI step +1
vDateNum= year(StrDate+i)*10000+ month(StrDate+i)*100+datepart("d",StrDate+i)
if WkDay=7 then J=7
if not(DtPart>=8 and DtPart<=21) and WkDay=7 and not (vDateNum=20110101 or vDateNum=20110205 or vDateNum=20110226) then ''and SatCount<2
'w=w & ":" & DtPart
load NoOfSat('12/03/2011','12/31/2011') as Test autogenerate 10000;
There is no function in the world that can tell you what labor days exist on each community. For example in Spain, holidays go by communities. Madrid has their own, Cataluña their own... In fact, thay are companies having different holidays in the same city.
What you need is a calendar of the company you are refering to, and that's all. Once you have that information, arrange your calculations acording to that calendar.