送你免費禮物🎁CALCULATE 與篩選的關係🤔


Stark's Power BI
電子報#86

嗨 Reader

這週過得好嗎?

這禮拜的電子報將接續上週的主題探討:「究竟什麼時候會用到 CALCULATE 函數?」

如果 Reader 是第一次訂閱電子報,這邊幫你快速補充這個主題的緣由。

噢對了!背景補充以前,本篇電子報最後有免費的小禮物🎁要送給你,記得看到最後唷!

由於前陣子在與學生諮詢時,他突然提了一個問題:「請問什麼時候要用到 CALCULATE?什麼時候不用呢?」

而經他這麼一問,我也才意識到,原來平常一直使用的 CALCULATE,其實對於新手來說會是一個滿陌生的概念。畢竟,在 Excel 中並沒有這個函數。

要解釋 CALCULATE 前,需要先理解篩選的概念。而上週電子報就是在探討篩選。

總結來說...

在 Power BI 內,萬物皆篩選。

這個連結是上週電子報的網頁好讀版,歡迎 Reader 前去閱讀。

透過了解篩選以後,我們就可以再更深入地探討篩選這件事。

假設...我就不想要篩選呢?

因為 Power BI 內視覺效果間的篩選是預設開啟的,因此無論我們在畫面上點選了什麼項目,所有圖表都會跟著連動

但是,有些狀況下,我希望篩選器只影響其中一張圖,其它圖不要跟著連動。

圖一中,我想做到無論怎麼改變篩選器的選項,柱狀圖可以不為所動

這要怎麼做呢?

圖一、取消篩選器的影響
圖一、取消篩選器的影響

這效果可以透過內建的功能來取消視覺效果之間的互動性。

如圖二,我們可以透過以下步驟取消篩選器對柱狀圖的互動性。

步驟 1:點擊篩選器

步驟 2:到上方找到「編輯互動」按鈕,並點擊之

步驟 3:到柱狀圖右上角點擊「禁止符號」,點完後該符號會呈現灰色填滿

圖二、取消互動性的步驟
圖二、取消互動性的步驟

這個是內建的方式取消視覺效果之間的互動性。

但如果只想要取消部分的篩選呢...?

利用公式改變篩選,以百分比計算為例

還有一種狀況,我們可以、也只能藉由公式去改變預設的篩選行為。

以下圖三的表格來說,如果我們要計算不同產品類別的銷售額百分比,該怎麼算呢?

圖三、不同類別之銷售額
圖三、不同類別之銷售額

舉例:計算飲料類別的銷售額百分比,就是將紅框內的數字(分子),除以黃框的所有數字加總(分母)。

但是問題來了,我們已經知道在計算每一個格子的時候,都會有來自視覺效果的篩選。也就是算紅色框飲料數字的時候,會有左邊飲料類別篩選的影響。

這個來自飲料的篩選可以讓我們正確得到飲料的銷售額,進而得到分子的數字。

但是要怎麼「忽略篩選」去得到所有類別的銷售額加總,進而得到分母的數字呢?

這時候就是 CALCULATE 出場的時候了!

CALCULATE 可以讓我們改變預設的篩選行為。

首先,我們先來看原本分子銷售額的量值公式,如圖四。

這是用一個 SUMX 函數對銷售事實表進行迭代,把每一列的數量乘上單價以後,獲得銷售額並加總。類似 Excel 的 SUMPRODUCT 函數。

圖四、銷售額量值公式
圖四、銷售額量值公式

接著,圖五是銷售額百分比的計算公式。

特別是第 2 到第 6 列,我定義了一個 allSales 變數用來計算不分類別的銷售額總和。

變數最外層使用了 CALCULATE 函數,代表要執行帶篩選的計算。

計算的對象是第 4 列的 [銷售額] 量值,也就是圖四所定義的公式。

接著最關鍵的是第 5 列,我用了 REMOVEFILTERS 去將產品維度表中,類別欄位的篩選給去除。所以從字面上看 REMOVEFILTERS 就是去除篩選,非常白話。另外,第 5 列的 REMOVEFILTERS 也可以改為 ALL 函數使用。

最後在第 7 列到第 11 列我把 [銷售額]allSales 利用 DIVIDE 函數執行相除進而獲得最後的百分比結果。

圖五、銷售額百分比計算公式
圖五、銷售額百分比計算公式

最後結果如圖六。

圖六、視覺化結果
圖六、視覺化結果

還有其它去除篩選的函數嗎?

看到這裡,不知道 Reader 是否好奇還有其它去除篩選的函數?

當然有!最常見的三種搭配 CALCULATE 的改變篩選函數即是:

  • ALL
  • ALLEXCEPT
  • ALLSELECTED

這三種函數使用的情境均不相同,也是新手很容易搞混的地方!

因此,我製作了一份價值 99 美金的《ALL* 系列函數統整》要免費送給你!

你可以直接點擊以下按鈕前往 Google Drive 下載!

P.S 這份統整本來是只有我的付費課程《Power BI DAX 新手到專家計畫》學員才享有的福利,但是我認為這對於新手的 DAX 學習相當重要,所以把它分享給 Reader 😊

今天的分享就到這邊啦!看完信件以後如果有任何新想法,歡迎回信告訴我唷!

關於 Stark
@ I Master Power BI

Stark | Power BI Expert
Stark,你的資料視覺化好夥伴

外商軟體工程師|協助企業資料視覺化

致力分享 Power BI 知識與技術

關注 我的 IG 獲得更即時 Power BI 資訊

FAQ

Q:這份電子報會收到什麼內容?
A:這是來自 Stark 所製作的電子報。透過這份電子報,你會接收到 Power BI 的各類知識與技術分享。

Q:看完信件有些想法,可以回信與你交流嗎?
A:歡迎!分享與交流就是學習最快的方式!一起透過 Power BI 玩資料視覺化!

Q:可以分享這封信件給身邊的朋友嗎?
A:當然可以!也可以請朋友直接訂閱「這份電子報」,未來就也能收到第一手資訊囉!

Hi! I'm a Stark.

I am a software engineer and data enthusiast based in Taiwan. I share knowledge in data visualization tool, expecially Microsoft Power BI. If you don't want to miss out the latest update, do subscribe to my newsletter.

Read more from Hi! I'm a Stark.

Stark's Power BI 電子報#111 嗨 Reader 這週過得如何呢? 最近有朋友問我:「Stark,如果現在想找數據分析的工作,最該準備的是什麼?」 我想了想,最關鍵的不是你學會多少軟體、語法、工具,而是 —— 你準備的東西,有沒有對應到企業真正想找的人才? 學了很多,卻總是差臨門一腳? 不管你是轉職者、應屆畢業生,還是已經在職場的職場人,也許你也曾遇過這樣的狀況: 明明學了 Excel、SQL、Power BI,但投出去的履歷都沒下文 一看到職缺說要「會做作品集」,卻不知道該從哪開始 面試時總是無法明確說出「為什麼你適合這份工作」 一直補技能,但還是不知道自己離企業要的人才還差多遠 老實說,這些都不是你不夠努力,而是 —— 你缺少一條清晰的準備路線圖。 對症下藥,成為企業的真正要的完美求職者 讓我用「數據分析求職四步驟」來拆解你可以怎麼準備: ✅ Step 1:掌握關鍵能力,而不是什麼都學一點 學技能,不是堆技能表。企業想找的是「可以交付成果的人」,所以你得先搞清楚: 哪些是 一定要會 的核心能力?(統計、資料處理、商業邏輯…) 哪些是 可選但加分...

Power BI ?????????

Stark's Power BI 電子報#85 嗨 Reader 這週過得好嗎? 今年的中秋節落在禮拜二,不知道你週一有沒有請假,自主連成四天連假呢? 我的話是沒有,剛好這陣子專案在趕進度,因此週一就還是乖乖上班 😂 今天的電子報,我想跟 Reader 分享一個基礎但新手不一定都容易明白的概念。 前幾天在與學生諮詢的時候,他突然問了我一個問題:「請問什麼時候要用到 CALCULATE?什麼時候不用呢?」 經他這麼一問,我才意識到,原來平常一直使用的 CALCULATE ,其實對於新手來說會是一個滿陌生的概念。畢竟,在 Excel 中並沒有這個函數。 因為要解釋 CALCULATE 的概念會需要用比較長的篇幅,因此我預計將內容分成兩篇電子報來寫。 今天會是第一篇,解釋篩選的概念。 Power BI 圖表的底層邏輯:萬物皆篩選 剛接觸 Power BI 的使用者可能很快就會發現一件事情,就是 Power BI 每一個圖表(精確來說是「視覺效果,Visual」)之間都具備很高的互動性。 而不同視覺效果間的互動性是 Power BI 內的第一種篩選。 如圖一,當我們在交叉分析篩選器選了...

Stark's Power BI 電子報#82 嗨 Reader 這週過得如何呢? 上週我受邀至桃園的某一企業進行教育訓練,教導學員基礎的 Power BI 操作。 圖一、教育訓練上課畫面 總共 6 小時的課程包含以下內容: Power BI 生態系認識 Power BI 解決方案與資料流 資料清理:Power Query 資料模型 資料視覺化 利用 Power BI Service 進行報表分享與管理 如果看到這裡你覺得:「哇!也太多內容了吧!」 沒錯!就是這麼豐富!這麼紮實! 我對於自己課程的期許是:「比起只會點點按按做圖表,我希望每位學員在上完課程以後,都可以用更宏觀的角度了解資料,進而選用正確的工具。」 也因此,我會把 Power BI 內實用的工具,做一個完整地介紹,並且搭配實作幫助學員理解。 不過也因為太過於豐富,下半堂講視覺化的課程反而差點講不完。最後是以純解說的方式帶過,個人覺得比較可惜,也是我需要對課程進行優化的地方。 來自學員的問題 在課程中場休息的時候,有位學員跑來提了一個很有趣的問題。 由於我沒有該位學員的報表,僅能夠就我的印象大致畫出他的畫面。...