close

如果Power BI圖表你只想讓它顯示最新當月份的資料, 可以用下面的方式. (還好有分享, 讓我學到更有效率的方式喔!)

1. 增加New measure, 去抓出當月的月份, DAX函數: Today_YYMM = format(TODAY(),"YYYYMM")

但若用下面修改後的DAX,則不需有增加這個New measure喔!

2. 在資料表中, 增加New column去判斷, 該筆資料是否屬於當月份的, 如果是就顯示 Today month judge = if([Today_YYMM]=TableA[Year-Month],"1","0")
經過建議後, 修改為
image
備註: 為何 _flag=後面的1*()那個寫法,可以說明一下嗎?
這邊是為了將布林值轉換為數值。 True * 1 = 1; False * 1 = 0
 
3. 在圖表的Filters, 將Today month judge的欄位拉入, 選擇Basic filtering的"1". 這樣, 該圖表就只會顯示當月的資料嚕!

image


衍生運用: 找出今天所屬的週別, 將相關資料排除這周不完整的資料, 只報告上周的最新狀況.

量值Today_WK = LOOKUPVALUE('Calendar'[WEEK],'Calendar'[DATE],TODAY())
date_flag =
Var _today = TODAY()
Var _today_wk = [Today_WK]
Var _wk = Sheet[Week]
Var _flag = 1*(_wk = _today_wk)
Return _flag

在圖表的Filters, 將_date_flag拉入, 選擇Basic filtering的"0". 這樣, 該圖表就只會顯示上周前的資料嚕!


DAX

Format說明: https://docs.microsoft.com/zh-tw/dax/format-function-dax

VAR說明: https://docs.microsoft.com/zh-tw/dax/var-dax
 

[謝謝Faceborrk社團Power BI user group的高手,林子揚的建議如下]
1. FORMAT()其實可以寫得更簡潔。
2. 少用IF()可以期待有更快的速度。
arrow
arrow

    學習的長禾 發表在 痞客邦 留言(0) 人氣()