Share via


建立量值

本主題說明如何根據 DAX 範例活頁簿中的資料建立「量值」(Measure)。該活頁簿包含取自 AdventureWorks 資料庫的自行車相關資料。如需可由何處取得範例活頁簿的詳細資訊,請參閱<取得 PowerPivot 的範例資料>。如需公式的詳細資訊,請參閱<建立計算的公式>。

了解量值

量值是特別為了在使用 PowerPivot 資料的樞紐分析表 (或樞紐分析圖) 中使用而建立的公式。量值可以用標準彙總函式 (例如 COUNT 或 SUM) 做為基礎,或者,您也可以使用 DAX 自行定義公式。您應在樞紐分析表的 [值] 區域使用量值。如果想要將計算的結果放在樞紐分析表的其他區域,請改用導出資料行 (建立導出資料行)。

當您建立量值時,其將與活頁簿中的某個資料表產生關聯,而量值定義會與該資料表一起儲存。量值會出現在 PowerPivot 欄位清單中,可供活頁簿的所有使用者使用。

建立和編輯量值

建立量值之前,必須先將樞紐分析表或樞紐分析圖加入 PowerPivot 活頁簿。加入量值之後,即會針對樞紐分析表 [值] 區域內的每個資料格評估公式。由於結果是依據資料列與資料行標頭的每種組合而建立,每個資料格中量值的結果可能各有不同。

將樞紐分析表或樞紐分析圖加入至 PowerPivot 活頁簿之後,請使用 [量值設定] 對話方塊來加入包含公式的量值。此公式會使用 PowerPivot 視窗中的資料行和資料表來定義總和、平均值或其他計算。標準彙總的建立方式與在 Excel 中的建立方式相同,都是將欄位拖曳到 [值] 欄位區域,然後選擇其中一種標準彙總方法:COUNT、SUM、AVERAGE、MIN 或 MAX。自訂彙總將於下一節進行討論。

您所建立的量值可讓您在一個以上的樞紐分析表或樞紐分析圖中使用。量值的名稱在活頁簿內必須是唯一的,而且您不能使用活頁簿內用於命名任何資料行的相同名稱。

範例:建立使用自訂彙總的量值

在這個範例中,您所要建立的自訂彙總將使用其中一個新的 DAX 彙總函式 SUMX,另外還有 ALL 函數,後者會傳回某個資料行的所有值而忽略該資料行的內容。此範例使用來自 DAX 範例活頁簿的下列資料行:

  • DateTime[CalendarYear]

  • ProductCategory[ProductCategoryName]

  • ResellerSales_USD[SalesAmount_USD]

範例中使用的樞紐分析表具有資料列標籤 CalendarYear 和資料行標籤 ProductCategoryName,同時量值公式會用到 SalesAmount_USD。此範例將回答這個問題:每一產品類別目錄於 2001-2004 年每年的銷售量各佔總數量的百分之幾?例如,您可以藉此得知 2003 年的自行車銷售量佔總數量的百分比。為了回答這個問題,我們要使用下列量值公式:

=SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])/SUMX(ALL(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])

公式的建構方式如下所示:

  1. 分子 SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD]) 是樞紐分析表中目前資料格的 ResellerSales_USD[SalesAmount_USD] 值總和。因為附帶了 CalendarYear 和 ProductCategoryName 的內容,表示每一年各產品類別目錄的這個值都不盡相同。例如,2003 年自行車總銷售量不會等於 2004 年配件總銷售量。

  2. 對於分母,您首先要指定 ResellerSales_USD 資料表,然後使用 ALL 函數來移除該資料表上的所有內容篩選。這可確保年份與產品類別目錄的每種組合具有相同的值,因為分母一律為 2001-2004 年的總銷售量。

  3. 接著,您要使用 SUMX 函數加總 ResellerSales_USD[SalesAmount_USD] 資料行中的值。換句話說,您要取得所有轉售商銷售量之 ResellerSales_USD[SalesAmount_USD] 的總和。

[!附註]

在 Windows Vista 和 Windows 7 中,PowerPivot 視窗中的功能是由功能區提供,本主題會對此加以說明。在 Windows XP 中,功能都是從一組功能表使用的。如果您是使用 Windows XP 而想要了解功能表命令與功能區命令的相關性,請參閱<Windows XP 中的 PowerPivot UI>。

若要建立使用自訂彙總的量值

  1. 按一下 [PowerPivot] 視窗中的 [主資料夾] 索引標籤,然後按一下 [報表] 群組中的 [樞紐分析表]

  2. [建立樞紐分析表] 對話方塊中,確認已選取 [新工作表],然後按一下 [確定]

    PowerPivot 會在新的 Excel 工作表中建立一個空白的樞紐分析表,並於活頁簿右側顯示 PowerPivot 欄位清單

  3. 在 Excel 視窗中,使用 [PowerPivot 欄位清單] 將資料行加入至樞紐分析表:

    1. 找出 [DateTime] 資料表,並將 [CalendarYear] 資料行拖曳到樞紐分析表的 [資料列標籤] 區域。

    2. 找出 [ProductCategory] 資料表,並將 [ProductCategoryName] 資料行拖曳到樞紐分析表的 [資料列標籤] 區域。

  4. 在 Excel 視窗的 [PowerPivot] 索引標籤上,按一下 [量值] 群組中的 [新增量值]

  5. [量值設定] 對話方塊中,按一下 [資料表名稱] 的向下箭號,然後從下拉式清單中選取 [ResellerSales_USD]

    資料表的選擇會決定將要儲存量值定義的位置。量值並不需要與該量值所參考的資料表一起儲存。

  6. 針對 [量值名稱 (所有樞紐分析表)],輸入 AllResSalesRatio。

    此名稱是當做量值的識別碼使用,因此,它在活頁簿內必須是唯一的,而且無法變更。

  7. 針對 [自訂名稱 (這個樞紐分析表)],輸入 All Reseller Sales Ratio。

    基於顯示用途,此名稱僅用於目前的樞紐分析表中。例如,您可以在其他樞紐分析表中重複使用量值 AllResSalesRatio,但賦予其另一個名稱,或使用不同的語言。

  8. [公式] 文字方塊中,將游標放置在等號 (=) 後面。

  9. 輸入 SUMX,然後輸入括號。

    =SUMX( 
    

    當您輸入時,[公式] 文字方塊下方的工具提示會指出 SUMX 函數需要兩個引數:第一個引數是資料表或傳回資料表的運算式,而第二個引數是提供可以加總之數字的運算式。

    輸入 Res,然後從清單中選取 [ResellerSales_USD],再按下 TAB 鍵。

    資料行名稱就會插入公式中,如下所示:

    =SUMX(ResellerSales_USD
    
  10. 輸入逗號。

    工具提示會更新以顯示下一個需要的引數是運算式。運算式可以是值、資料行的參照或兩者的特定組合。例如,您可以建立加總兩個其他資料行的運算式。在此範例中,您將提供包含每個轉售商銷售量之資料行的名稱。

  11. 針對包含您要加入之資料行的資料表,輸入其名稱的前幾個字母。在此範例中,輸入 Res,然後從清單中選取 [ResellerSales_USD[SalesAmount_USD]] 資料行。

  12. 按下 TAB 鍵可以將資料行名稱插入公式中,然後加上右括號,如下所示:

    =SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])
    
  13. 輸入正斜線,然後輸入或複製並貼上下列程式碼,到 [量值設定] 對話方塊中。

    SUMX(ALL(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])
    

    請注意 ALL 函數以巢狀方式置於 SUMX 函數內。如今整個公式的內文如下所示:

    =SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])/SUMX(ALL(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])
    
  14. 按一下 [檢查公式]

    系統會檢查此公式是否有語法或參考錯誤。解決可能已經發現的所有錯誤,例如,遺漏括號或逗號。

  15. 按一下 [確定]

    此時量值會將日曆年與產品類別目錄之每種組合的值填入樞紐分析表。

  16. 格式化資料表:

    1. 選取樞紐分析表中的資料,包括 [總計] 資料列。

    2. [主資料夾] 索引標籤的 [數值] 群組中,按一下百分比按鈕 ([%]),再按兩次增加小數位數按鈕 ([<- .0 .00])。

    完成後的資料表應顯示如下。現在您就可以看出產品與年份各種組合的總銷售量所佔百分比。例如,2003 年自行車銷售量為 2001-2004 年全數總銷售量的 31.71%。

All Reseller Sales

Column Labels

 

 

 

 

資料列標籤

Accessories

Bikes

Clothing

Components

Grand Total

2001

0.02%

9.10%

0.04%

0.75%

9.91%

2002

0.11%

24.71%

0.60%

4.48%

29.90%

2003

0.36%

31.71%

1.07%

6.79%

39.93%

2004

0.20%

16.95%

0.48%

2.63%

20.26%

Grand Total

0.70%

82.47%

2.18%

14.65%

100.00%

編輯現有的量值

若要檢視現有量值的定義,您可以使用 PowerPivot 欄位清單[PowerPivot 欄位清單] 包含目前 PowerPivot 視窗中的所有資料表清單,包括原始資料的資料行、導出資料行,以及您可能已經定義的所有量值。您可以用滑鼠右鍵按一下任何量值的定義,然後選取 [編輯公式] 來開啟可讓您檢視及修改量值定義的對話方塊。

若要檢視與變更現有的量值

  1. [Excel] 視窗中,按一下樞紐分析表或樞紐分析圖內的任何位置,以顯示 [PowerPivot 欄位清單]

  2. [PowerPivot 欄位清單] 中,找出包含您所建立量值的資料表。

    每個資料表都可以包含基底資料行、導出資料行和量值。量值會在量值名稱的右邊,以一個小計算機圖示來表示。

    針對此範例,請以滑鼠右鍵按一下 [SumAmtByReseller],然後按一下 [編輯公式]

  3. [量值設定] 對話方塊中,編輯公式。

    您也可以變更量值名稱或自訂名稱,及其相關聯的資料表。