如何在Power Automate中筛选Excel里日期等于昨日的数据?
Power Automate 筛选昨日EST日期条目解决方案
核心问题分析
你的问题根源是时区不匹配:流程默认用UTC时间计算昨日,但源数据是EST时区的日期,直接用addDays(utcNow(),-1,'yyyy-MM-dd')会和EST的昨日日期错位(比如EST的1/5/2024对应UTC的1/5/2024 05:00之后,用utcNow()-1得到的是UTC的1/4/2024,和EST的1/5/2024不匹配)。
具体修复步骤
添加「Compose」动作(命名为「EST昨日日期」),输入表达式:
addDays(convertTimeZone(utcNow(), 'UTC', 'Eastern Standard Time'), -1, 'MM/d/yyyy')这个表达式会把当前UTC时间转成EST时区,再减去1天,输出和源数据一致的
MM/D/YYYY格式日期。调整「Filter Array」的筛选条件:
- 左侧值:输入
formatDateTime(convertTimeZone(item()?['提交日期'], 'UTC', 'Eastern Standard Time'), 'MM/d/yyyy')
作用是把Excel返回的ISO格式日期转成EST时区,并格式化为和源数据一致的格式 - 运算符选择「等于」
- 右侧值选择「EST昨日日期」的输出结果
- 左侧值:输入
运行流程验证:此时「Compose」动作就能正确返回EST时区昨日的所有条目。
额外说明
- 无需手动处理夏令时:
Eastern Standard Time时区会自动切换夏令时(EDT),表达式会自动适配 - 如果Excel返回的日期是数字格式(而非ISO字符串),可先通过
formatDateTime(item()?['提交日期'], 'yyyy-MM-ddTHH:mm:ssZ')转成ISO格式,再执行上述时区转换
内容的提问来源于stack exchange,提问作者J.P.
相关产品推荐
相关产品推荐

