Power BI DAX NEXT 函數:視覺計算取得下一列資料完整指南
Power BI DAX NEXT 函數:視覺計算取得下一列資料完整指南
📅 發布日期:2026-09-20
🏷️ 分類:視覺計算與軸函數 DAX 函數
💡 函數速查卡
| 函數名稱 | NEXT |
|---|---|
| 所屬類別 | 視覺計算與軸函數 (Visual Calculations / Axis functions) |
| 傳回類型 | 根據傳入表達式決定的純量值(Scalar Value) |
| 常用頻率 | ★★★☆☆ |
在 Power BI 最新推出的**視覺計算(Visual Calculations)**功能中,NEXT 函數用於從當前視覺物件的軸(Axis)中取得**下一列(或下一個資料點)**的指定表達式數值。這使得在視覺層級計算「下期比較」、「前導分析(Lead Analysis)」或計算與下一週期的差異變得極為簡便,不再需要撰寫複雜的 DAX 時間智慧或導出表邏輯。
一、 基本語法與參數
NEXT 函數的標準 DAX 語法結構如下:
NEXT(<expression>[, <steps>][, <axis>][, <blanks>][, <reset>])
| 參數 | 說明 | 預設值 / 必填 |
|---|---|---|
expression |
要在下一個資料點計算或擷取的表達式(如度量值或欄位)。 | 必填 |
steps |
向後移動的步數(預設為 1,即下一列)。 | 選填 (預設為 1) |
axis |
沿著哪一個視覺軸進行移動(例如 ROWS、COLUMNS 等)。 |
選填 (預設為 ROWS) |
blanks |
指定如何處理空白值(如 KEEP 或 SKIP)。 |
選填 |
reset |
定義特定階層分組重置的條件(如指定群組切換時重新計算)。 | 選填 |
二、 核心功能說明
NEXT 與相反方向的 PREVIOUS 函數相對應,專門運用於 Power BI 的「視覺計算」矩陣或圖表內容中。它直接對當前渲染出來的圖表陣列進行位移操作,大幅降低傳統 DAX 需要撰寫 OFFSET 或 EARLIER 的複雜度。
在 Power BI 報表視覺計算中,常見的實務應用包括:
- 比較當前月份與下一個月份的銷售目標或實際表現差異。
- 在流水帳或排程資料中,預先取得「下一筆交易金額」或「下一次預約時間」。
- 計算跨週期的成長率變化趨勢。
三、 實用 DAX 範例
範例 1:取得下一個月份的銷售額(視覺計算)
在視覺計算編輯器中,直接調用下一個單元格的銷售額:
// 在視覺計算中建立:取得下一列的 [Total Sales]
NextMonthSales = NEXT([Total Sales])
範例 2:計算與下一期的差異值
計算「下期銷售額」與「本期銷售額」的變動差距:
// 計算下期相較於本期的增減金額
SalesDifferenceToNext = NEXT([Total Sales]) - [Total Sales]
範例 3:指定移動步數(向後推移兩期)
使用 steps 參數,一次取得未來第二期的資料值:
// 取得往後推移 2 個單元格的銷售額數字
TwoPeriodsLaterSales = NEXT([Total Sales], 2)
四、 常見陷阱與注意事項
⚠️ 注意事項 1:僅限於視覺計算(Visual Calculations)中使用
NEXT 屬於軸(Axis)相關函數,無法直接在標準 DAX 度量值(Measure)或計算行(Calculated Column)中使用。必須在 Power BI 報表檢視的「新視覺計算」模式下編寫。
⚠️ 注意事項 2:邊界超出會傳回 BLANK()
當視覺矩陣或圖表處於最後一列(或最後一個資料點)時,由於沒有「下一個」項目存在,
當視覺矩陣或圖表處於最後一列(或最後一個資料點)時,由於沒有「下一個」項目存在,
NEXT 會自動傳回 BLANK()。在進行減法或除法運算時需注意空值對視覺效果的影響。
五、 相關函數推薦
六、 官方文件連結
想進一步瞭解微軟官方說明與 DAX 語法細節,可參考:
留言
張貼留言