Excel 中的 Power Pivot 時間智慧

重要:  本文係由機器翻譯而成,請參閱免責聲明。本文的英文版本請見這裡,以供參考。

資料分析運算式 (DAX) 具有 35 個專用於隨時間彙總和比較資料的函數。 不同於 DAX 的日期及時間函數,時間智慧函數在 Excel 中沒有任何真正相似的項目。 這是因為視您在樞紐分析表和 Power View 視覺效果中所選的內容而定,時間智慧函數所使用的資料會時時變更。

若要使用時間智慧函數,請您需要有包含資料模型中的日期資料表。日期資料表必須包含一個資料列的資料行包含您的資料在每年的每一天。此欄會被視為 Date] 資料行 (雖然可以命名任何您喜歡)。許多時間智慧函數需要 date] 資料行來計算根據您選取作為報表中的欄位的日期。例如,如果您有使用 CLOSINGBALANCEQTR 函數,知道時當季結尾是真正的 Power Pivot 的順序計算右當季結尾遞減的量值,它必須參考得知當季開始和結束日期資料表中的 [日期] 欄。若要深入了解日期資料表,看看瞭解並在 Excel 中的 Power Pivot 中建立日期資料表

函數

可傳回單一日期的函數

此類別中的函數會傳回單一日期。 接著可以將結果做為其他函數的引數。

此類別的前兩個函數會傳回目前內容中 Date_Column 的第一個或最後一個日期。 當您想要尋找特定交易類型的第一個或最後一個日期,這項功能會很實用。 這些函數只有一個引數,即日期資料表中日期資料行的名稱。

此類別的接下來兩個函數可在運算式具有非空白值時找出第一個或最後一個日期 (或者,也可找出任何其他資料行值)。 這通常適用於庫存等情況,當您想要取得最後的庫存量,但不知道最後一次清點庫存的時間時。

可傳回單一日期的其他六個函數分別是可傳回計算目前內容期間的月度、季度或年度的第一個或最後一個日期。

可傳回日期資料表的函數

共有 16 個時間智慧函數可供傳回日期資料表。 這些函數通常會用來做為 CALCULATE 函數的 SetFilter 引數。 如同 DAX 中的所有時間智慧函數,每個函數以一個日期資料行做為其中一個引數。

此類別中的前八個函數開頭目前內容中的日期資料行。例如,如果使用樞紐分析表中的量值,可能有月或年欄標籤] 或 [列標籤]。最後的結果是 [日期] 欄會篩選以包含目前內容的日期。開始從該目前的內容,這些八個函數然後計算一個 (或下一個) 日、 月、 季或年並傳回日期在表單中的單一資料行的資料表。「 先前 」 函數向後工作的第一個日期在目前的內容,並在 [下一步] 函數向前移動從目前內容中的最後一個日期。

此類別的下四個函數相當類似,但並非用於計算前一個 (或下一個) 週期,而是計算「月初至今」(或季初至今、年初至今,或是前一年的同一時期) 這段期間的一組日期。 這些函數皆會使用目前內容中的最後一個日期來執行計算。 請注意,SAMEPERIODLASTYEAR 需要目前內容包含一組連續的日期。 如果目前內容不是一組連續的日期,則 SAMEPERIODLASTYEAR 將會傳回錯誤。

此類別中的最後四個函數較為複雜,但功能也較為強大。 這些函數用來將目前內容的一組日期轉換為一組新的日期。

  • DATEADD (Date_Column, Number_of_Intervals, Interval)

  • DATESBETWEEN (Date_Column, Start_Date, End_Date)

  • DATESINPERIOD (Date_Column, Start_Date, Number_of_Intervals, Interval)

DATESBETWEEN 會計算指定開始日期和結束日期之間的一組日期。 其他三個函數則可轉換目前內容的一些時間間隔。 間隔時間可以是日、月、季或年。 這些函數可讓您透過下列任一方式,輕鬆轉換時間間隔以供進行計算:

  • 回推兩年

  • 回推一個月

  • 前推三季

  • 回推 14 天

  • 前推 28 天

在每種情況中,您只需指定要轉換的時間間隔,以及這些間隔的轉換量。 正的間隔時間會往前推移,而負的間隔時間會往回推移。 間隔時間本身是以 DAY、MONTH、QUARTER 或 YEAR 關鍵字指定。 這些關鍵字並非字串,因此不得以引號括住。

可供評估運算式一段期間的函數

此類別的函數可供評估一段指定期間的運算式。 您可以使用 CALCULATE 和其他時間智慧函數來完成相同的操作。 例如:

= TOTALMTD (Expression, Date_Column [, SetFilter])

與下列完全相同:

= CALCULATE (Expression, DATESMTD (Date_Column)[, SetFilter])

不過,使用這些時間智慧函數會較容易,因為他們相當適合用來運算需要解決的問題:

  • TOTALMTD (Expression, Date_Column [, SetFilter])

  • TOTALQTD (Expression, Date_Column [, SetFilter])

  • TOTALYTD (Expression, Date_Column [, SetFilter] [,YE_Date]) *

此類別中也包含一組函數,可供計算期初和期末餘額。 您應該瞭解這些特殊函數的某些概念。 首先,如同您認為顯而易見地,任何週期的期初餘額會與前一個週期的期末餘額相同。 期末餘額包含直到週期結束的所有資料,而期初餘額則不包含目前週期的任何資料。

這些函數一律會傳回針對特定時間點所評估的運算式值。 我們所在乎的時間點永遠是行事曆週期最後一個可能的日期值。 期初餘額是以上一個週期的最後一個日期為基礎,而期末餘額則是以目前週期的最後一個日期為基礎。 目前週期一律由目前日期內容的最後一個日期決定。

其他資源

文件 ︰瞭解並在 Excel 中的 Power Pivot 中建立日期資料表

參考資料:Office.com 上的 DAX 函數參考

範例 ︰損益資料模型及分析 Microsoft Excel 中的 PowerPivot

附註: 機器翻譯免責聲明︰本文係以電腦系統翻譯而成,未經人為介入。Microsoft 提供此等機器翻譯旨在協助非英語系使用者輕鬆閱讀 Microsoft 產品、服務及技術相關內容。基於本文乃由機器翻譯而成,因此文中可能出現詞辭、語法、文法上之錯誤。

擴展您的技能
探索訓練
優先取得新功能
加入 Office 測試人員

這項資訊有幫助嗎?

感謝您的意見反應!

感謝您的意見反應! 我們將協助您與其中一位 Office 支援專員連絡以深入了解您的意見。

×