|
本帖最后由 yhywhh123 于 2019-9-14 22:38 编辑
- .版本 2
- .支持库 CnCalendar
- .子程序 时间_判断是否法定节假日, 整数型, , 返回一个数值:1、工作日;2、法定节假日。注一:不包括调休,例:2019年国庆10月1日—3日为法定节假日。注二:判断日期范围为1900年1月1日—2099年12月31日
- .参数 日期, 日期时间型
- .局部变量 公历年, 整数型
- .局部变量 公历月, 整数型
- .局部变量 公历日, 整数型
- .局部变量 农历月, 文本型
- .局部变量 农历日, 文本型
- .局部变量 节日判断, 整数型
- .局部变量 清明日期, 整数型
- 节日判断 = 1
- 公历年 = 取年份 (日期)
- 公历月 = 取月份 (日期)
- 公历日 = 取日 (日期)
- 农历月 = 格式化日期 (日期框1.今天, “%M”)
- 农历日 = 格式化日期 (日期框1.今天, “%D”)
- .如果真 (公历年 > 1900 且 公历年 < 2000)
- 清明日期 = 取整 ((公历年 - 1900) × 0.2422 + 5.59) - 取整 ((公历年 - 1900) ÷ 4)
- .如果真结束
- .如果真 (公历年 > 2000 且 公历年 < 2100)
- 清明日期 = 取整 ((公历年 - 2000) × 0.2422 + 4.81) - 取整 ((公历年 - 2000) ÷ 4)
- .如果真结束
- .如果真 (公历月 = 4 且 公历日 = 清明日期)
- 节日判断 = 2 ' 清明
- .如果真结束
- .如果真 (公历月 = 1 且 公历日 = 1)
- 节日判断 = 2 ' 元旦
- .如果真结束
- .如果真 (公历月 = 5 且 公历日 = 1)
- 节日判断 = 2 ' 劳动节
- .如果真结束
- .如果真 (公历月 = 10 且 公历日 = 1)
- 节日判断 = 2 ' 十一
- .如果真结束
- .如果真 (公历月 = 10 且 公历日 = 2)
- 节日判断 = 2 ' 十一
- .如果真结束
- .如果真 (公历月 = 10 且 公历日 = 3)
- 节日判断 = 2 ' 十一
- .如果真结束
- .如果真 (农历月 = “一月” 且 农历日 = “初一”)
- 节日判断 = 2 ' 春节
- .如果真结束
- .如果真 (农历月 = “一月” 且 农历日 = “初二”)
- 节日判断 = 2 ' 春节
- .如果真结束
- .如果真 (农历月 = “一月” 且 农历日 = “初二”)
- 节日判断 = 2 ' 春节
- .如果真结束
- .如果真 (农历月 = “五月” 且 农历日 = “初五”)
- 节日判断 = 2 ' 端午
- .如果真结束
- .如果真 (农历月 = “八月” 且 农历日 = “十五”)
- 节日判断 = 2 ' 中秋
- .如果真结束
- 返回 (节日判断)
复制代码
补充内容 (2019-9-15 02:48):
判断清明那,第二段判断改为,不然2000年取不到清明节
.如果真 (公历年 ≥ 2000 且 公历年 < 2100)
|
|