You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Power BI中高效筛选‘本年今日之前’的数据?

高效实现「本年截至今日」筛选的三种方案

一、计算列方案(简化版)

你原来的公式可以简化,布尔逻辑本身就能直接返回TRUE/FALSE,不用嵌套IF:

this_year_before_today = YEAR([Date]) = YEAR(TODAY()) && [Date] <= TODAY()

添加这个计算列后,直接在可视化筛选器里勾选该列的TRUE值,一步就能筛选出目标时间段,比之前两个筛选器的组合简洁得多。计算列会在报表刷新时自动更新判断结果,每天打开都会适配最新日期。

二、DAX度量值筛选方案(推荐,更灵活)

如果不想修改日期表,用度量值动态判断是更灵活的选择:
先创建一个判断用的度量值:

Is_This_Year_Before_Today = 
VAR CurrentDate = MAX('Date'[Date])
RETURN
IF(YEAR(CurrentDate) = YEAR(TODAY()) && CurrentDate <= TODAY(), 1, 0)

把这个度量值拖到可视化的筛选器面板,设置为等于1,就能精准筛选出符合条件的日期。这种方式不用改动日期表,而且是实时计算,适合在多个可视化组件里复用。

要是你需要直接计算该时间段的业务指标(比如销售额),还可以直接在度量值里过滤范围,连筛选器都省了:

Sales_This_Year_Before_Today = 
CALCULATE(
    SUM('Sales'[Amount]),
    YEAR('Date'[Date]) = YEAR(TODAY()),
    'Date'[Date] <= TODAY()
)

直接用这个度量值做可视化,结果就是本年截至今日的销售额数据。

三、可视化筛选器简化方案

如果不想新增计算列或度量值,直接用单个自定义相对日期筛选器就能解决:

  • 打开筛选器面板,选中日期字段,设置为「相对日期」,然后选择「自定义」;
  • 起始范围选「本年」,结束范围选「今天」。
    这样一个筛选器就替代了原来的两个组合,直接锁定本年截至今日的时间段,操作简单快捷。

内容的提问来源于stack exchange,提问作者labrecquev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 18:19:55