如何设置Power Automate每月第3个工作日触发?求解决方案
实现Power Automate每月第3个工作日触发的方案
问题分析
你之前的判断公式失效,大概率是因为formatDateTime(utcNow(),'ddd')返回的是本地化星期缩写(比如中文环境下是“周六”“周日”),和你写的英文Sat/Sun不匹配,导致判断逻辑出错。下面是可靠的实现步骤:
具体实现步骤
设置触发器
- 选择「Recurrence(重复)」触发器,配置为:
- 频率:每月
- 重复方式:每天
- 开始日期:设为当月1日
- 重复范围:限定在每月1日到7日(每月第3个工作日最晚不会超过7号,这个范围足够覆盖所有情况)
- 选择「Recurrence(重复)」触发器,配置为:
添加判断条件
- 添加「Condition(条件)」动作,切换到高级模式,粘贴以下公式:
@and( not(or(equals(dayOfWeek(utcNow()), 0), equals(dayOfWeek(utcNow()), 6))), equals( sub( day(utcNow()), length(filter( range(0, day(utcNow())), or( equals(dayOfWeek(addDays(startOfMonth(utcNow()), item())), 0), equals(dayOfWeek(addDays(startOfMonth(utcNow()), item())), 6) ) )) ), 3 ) ) - 公式逻辑说明:
- 第一部分:
not(or(...))判断当天不是周末(dayOfWeek()返回0=周日,6=周六) - 第二部分:计算从当月第一天到当天的周末总数,用当月天数减去周末数,得到当天是当月第几个工作日,判断是否等于3
- 第一部分:
- 添加「Condition(条件)」动作,切换到高级模式,粘贴以下公式:
执行业务逻辑
- 条件为「是」时,运行你的核心业务流程;条件为「否」时,直接终止流程即可
可选:考虑节假日的扩展
如果需要排除法定节假日,你可以额外维护一个节假日列表(比如用Excel表格或SharePoint列表),在条件中增加判断:当天不在节假日列表内,同时工作日序号等于3(若当天是节假日,工作日序号需要顺延)。
内容的提问来源于stack exchange,提问作者albertan
相关产品推荐
相关产品推荐

