Power Query技术问询:如何判断日期列中的日期是否早于TODAY()并返回TRUE/FALSE布尔值
在Power Query中判断日期是否早于今日的方法
当然可以!Power Query里完全能轻松实现这个需求,而且操作起来一点都不复杂。
核心实现思路
你只需要用Power Query的日期比较功能,结合获取当前日期的函数就能搞定。具体来说,用下面的公式在自定义列里判断:
= [你的日期列名] < Date.From(DateTime.LocalNow())
公式拆解
Date.From(DateTime.LocalNow()):这个函数会把当前的本地系统时间转换成纯日期格式(去掉时分秒),也就是我们需要的「今日日期」。<比较运算符:直接拿你的日期列里的每个值和今日日期对比,如果该日期早于今天,就返回TRUE,否则返回FALSE。
一些实用补充
- 如果你的日期列包含时间部分也不用担心,Power Query会自动处理:比如
2024-05-20 18:00和今日日期2024-05-20对比时会判定为相等,返回FALSE;而2024-05-19 23:59则会返回TRUE。 - 要是你需要判断「日期早于或等于今日」,只需要把
<改成<=就行。 - 关于时区:如果担心夏令时影响,可以用
DateTime.FixedLocalNow()代替DateTime.LocalNow(),前者是固定的本地时间,后者会适配夏令时调整,大多数日常场景下两者差异不大。
具体操作步骤
- 打开Power Query编辑器,选中你的目标数据表格。
- 切换到「添加列」选项卡,点击「自定义列」。
- 在弹出的对话框里,把上面的公式粘贴进去,记得把
[你的日期列名]替换成你实际的列名称(比如[订单日期])。 - 点击「确定」,就能得到一个包含
TRUE/FALSE的新列啦!
内容的提问来源于stack exchange,提问作者Aaron
相关产品推荐
相关产品推荐

