示例
生产日期=2024.03.26 提前期2天 提前日期=2024.03.24
节假日表
2024.03.24
2024.03.23
2024.03.22
2024.03.15
2024.03.14
当提前日期在节假日表中存在,则向前减一天,知道没有节假日为止,这个如何使用do循环去循环判断
如上的结果提前日期应该是2024.03.21
[此贴子已经被作者于2024/3/25 10:32:30编辑过]
dim
生产日期 as date = #2024.03.26#do while datatables("节假日表").find("日期=#" & 生产日期 & "#") isnot nothing
生产日期 = 生产日期.adddays(-1)
loop
msgbox(生产日期)
For Each r As Row In Tables("排产表").rows
Dim d As Date=r("排产日期")
Dim d1 As Date
d1 = d.AddDays((r("提前期")*-1))
Do While DataTables("节假日表").Find("休息日=#" & d1 & "#") IsNot Nothing
r("排除节假日日期")= d1.AddDays(-1)
'Exit Do
Loop
r("排除节假日日期") = d1
Next