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

PowerBI实现周一至周日维度的上周数据切片器需求

解决PowerBI中展示上周(周一至周日)数据的方法

嘿,作为PowerBI新手遇到这个日期范围的问题确实有点闹心,不过别慌,咱们完全可以通过DAX计算来绕开Relative Week的限制,实现你想要的上周周一至周日的数据展示!下面给你两种具体的实现方式:

方法一:在日期表中添加计算列,制作自定义切片器

  • 第一步:打开你的日期表,进入「建模」选项卡,点击「新建列」,输入以下DAX公式:
是否为上周(周一至周日) = 
VAR CurrentDate = TODAY()
VAR CurrentWeekStart = DATE(YEAR(CurrentDate), MONTH(CurrentDate), DAY(CurrentDate)) - WEEKDAY(CurrentDate, 2) + 1 // 获取当前周的周一
VAR LastWeekStart = CurrentWeekStart - 7 // 上周周一
VAR LastWeekEnd = CurrentWeekStart - 1 // 上周周日
RETURN
IF(
    '日期表'[Date] >= LastWeekStart && '日期表'[Date] <= LastWeekEnd,
    "是",
    "否"
)
  • 第二步:在可视化面板中拖入「切片器」控件,选择刚创建的「是否为上周(周一至周日)」字段,在切片器中选择「是」,就能精准展示上周周一到周日的数据了。

方法二:创建度量值,通过视觉对象筛选器实现

如果你不想新增切片器,也可以用度量值来筛选:

  • 第一步:进入「建模」选项卡,点击「新建度量值」,输入以下DAX公式:
筛选上周(周一至周日) = 
VAR CurrentDate = TODAY()
VAR CurrentWeekStart = DATE(YEAR(CurrentDate), MONTH(CurrentDate), DAY(CurrentDate)) - WEEKDAY(CurrentDate, 2) + 1
VAR LastWeekStart = CurrentWeekStart - 7
VAR LastWeekEnd = CurrentWeekStart - 1
RETURN
IF(
    MAX('日期表'[Date]) >= LastWeekStart && MAX('日期表'[Date]) <= LastWeekEnd,
    1,
    0
)
  • 第二步:选中你需要展示数据的视觉对象(比如柱状图、表格),在「视觉对象筛选器」中添加刚创建的「筛选上周(周一至周日)」度量值,设置筛选条件为「等于1」,就能只显示目标日期范围的数据了。

小提示

记得确保你的日期表已经在PowerBI中标记为「日期表」(在「建模」选项卡中点击「标记为日期表」),这样DAX函数才能正确识别日期逻辑哦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.12 05:00:05