下面的脚本包含2个程序你正在寻找:GetlastDay和isWorkingDay:
set myDate to current date -- just for example !
set N to GetlastDay(myDate)
log N --> number of days in month of myDate
set A to IsWorkingday(myDate)
log A --> true if Monday to Friday, false if Saturday/Sunday
on GetlastDay(LDate) -- return last day of month of LDate
copy LDate to L -- to not change LDate
set L's day to 32 -- = first day of next month
set L to L - (1 * days) -- last day of month
return day of L
end GetlastDay
on IsWorkingday(LDate) -- true if date is not Saturday or Sunday
set SD to weekday of LDate
return (SD is not in {Saturday, Sunday})
end IsWorkingday
在香草AppleScript中,您可以通过以下方式获取当前月份的最后一天:1)将变量设置为'当前日期'2)将该日期的'day'属性设置为32以强制溢出。这将日期设置为下个月的第一天。 3)减去一天。 – vadian
让excel计算一下会不会更容易? ['NETWORKDAYS'](https://support.office.com/en-us/article/NETWORKDAYS-function-48e717bf-a7a3-495f-969e-5005e3eb18e7)函数中有一个内置函数,它可以完成所有功能step ... –
@vadian:这不是它的工作方式(至少在OS 10.8以上):将以下3条语句粘贴到脚本编辑器中并运行它们,您将看到结果日期是March _3rd_,而不是3月1日(您可能需要调整日期字符串以匹配您的语言环境):'将日期设置为日期“2016年2月1日”','将日期设置为32','aDate'。 – mklement0