????本節(jié)課,我們繼續(xù)來講解數(shù)據(jù)透視表的功能,在數(shù)據(jù)透視表中計算值。在數(shù)據(jù)透視表中,可在值字段中使用匯總函數(shù)合并基礎(chǔ)源數(shù)據(jù)中的值。如果匯總函數(shù)和自定義計算無法提供所需結(jié)果,可在計算字段和計算項中創(chuàng)建自己的公式。例如,可為計算項添加計算銷售傭金的公式,銷售傭金在每個地區(qū)可能有所不同。然后,數(shù)據(jù)透視表自動將傭金包含在分類匯總和總計中。
????計算的另一種方法是在 Power Pivot 中使用度量值,使用 數(shù)據(jù)分析表達(dá)式(DAX) 公式創(chuàng)建該度量值。數(shù)據(jù)透視表提供了一些計算數(shù)據(jù)的方法。
可用計算方法
要在數(shù)據(jù)透視表中計算值,可使用以下任一或所有類型的計算方法:
值字段中的匯總函數(shù)? ? 值區(qū)域中的數(shù)據(jù)可將數(shù)據(jù)透視表的中基礎(chǔ)源數(shù)據(jù)匯總。 例如,下列源數(shù)據(jù):

生成以下數(shù)據(jù)透視表和數(shù)據(jù)透視圖。 如果通過數(shù)據(jù)透視表中的數(shù)據(jù)創(chuàng)建數(shù)據(jù)透視圖,則該數(shù)據(jù)透視圖中的值會反映關(guān)聯(lián)的數(shù)據(jù)透視表中的計算。


????在數(shù)據(jù)透視表中,“月份”列字段提供的項為“三月”和“四月”?!暗貐^(qū)”行字段提供的項為“北部”、“南部”、“東部”和“西部”?!八脑隆绷泻汀氨辈俊毙薪徊嫣幍闹禐閬碜栽磾?shù)據(jù)的記錄中的總銷售收入(“月份”值為“四月”,“地區(qū)”值為“北部”)。
????在數(shù)據(jù)透視圖中,“地區(qū)”字段可能是一個分類字段,將“北部”、“南部”、“東部”和“西部”顯示為類別。“月份”字段可以是一個系列字段,將“三月”、“四月”和“五月”作為系列顯示在圖例中。名為“銷售總額”的“值”字段可包含數(shù)據(jù)標(biāo)記,用于顯示各地區(qū)的每月總收入。例如,一個數(shù)據(jù)標(biāo)記可通過其在縱軸(值)上的位置表示“北部”地區(qū)“四月”的銷售總額。
????要計算值字段,可所有類型的源數(shù)據(jù)(聯(lián)機(jī)分析處理 (OLAP) 源數(shù)據(jù)除外)使用以下匯總函數(shù)。如:Sum,值的總和。這是用于數(shù)值數(shù)據(jù)的默認(rèn)函數(shù)。Count,數(shù)據(jù)值的數(shù)量。Count 匯總函數(shù)的作用與 COUNTA 函數(shù)相同。Count 是數(shù)字以外數(shù)據(jù)的默認(rèn)函數(shù)。等
????自定義計算 自定義計算 根據(jù)數(shù)據(jù)區(qū)域中的其他項或單元格來顯示值。例如,可將“銷售總額”數(shù)據(jù)字段中的值顯示為“三月”銷售額的某個百分比,或顯示為“月份”字段中各項的匯總值。
????公式 如果匯總函數(shù)和自定義計算無法提供所需結(jié)果,可在計算字段和計算項中創(chuàng)建自己的公式。例如,可為計算項添加計算銷售傭金的公式,銷售傭金在每個地區(qū)可能有所不同。然后,報表自動將傭金包含在分類匯總和總計中。
源數(shù)據(jù)類型如何影響計算
????基于 OLAP 源數(shù)據(jù)的計算? ? 對于創(chuàng)建自 OLAP 多維數(shù)據(jù)集的數(shù)據(jù)透視表,會在 OLAP 服務(wù)器上預(yù)先計算匯總值,然后在 Excel 中顯示結(jié)果。不能更改這些預(yù)計算值在數(shù)據(jù)透視表中的計算方式。例如,不能更改用于計算數(shù)據(jù)字段或分類匯總的匯總函數(shù),也不能添加計算字段或計算項。
????此外,如果 OLAP 服務(wù)器提供計算字段(稱為計算成員),可在數(shù)據(jù)透視表字段列表中看到這些字段。 還可看到通過宏(在 Visual Basic for Applications (VBA) 中編寫并存儲在工作簿中)創(chuàng)建的所有計算字段和計算項,但不能更改這些字段或項。對于 OLAP 源數(shù)據(jù),可在計算分類匯總和總計時包括或排除隱藏項的值。
????基于非 OLAP 源數(shù)據(jù)的計算? ? 在基于其他類型的外部數(shù)據(jù)或基于工作表數(shù)據(jù)的數(shù)據(jù)透視表中,Excel 使用 Sum 匯總函數(shù)來計算包含數(shù)值數(shù)據(jù)的值字段,并使用 Count 匯總函數(shù)來計算包含文本的數(shù)據(jù)字段??蛇x擇不同的匯總函數(shù)(例如,Average、Max 或 Min)以進(jìn)一步分析和自定義數(shù)據(jù)。此外,還可通過創(chuàng)建計算字段或在字段內(nèi)創(chuàng)建計算項,創(chuàng)建使用報表元素或其他工作表數(shù)據(jù)的自定義公式。
在數(shù)據(jù)透視表中使用公式
????僅可在基于非 OLAP 源數(shù)據(jù)的報表中創(chuàng)建公式。不能在基于 OLAP 數(shù)據(jù)庫的報表中使用公式。在數(shù)據(jù)透視表中使用公式時,應(yīng)了解以下公式語法規(guī)則和公式行為:
????數(shù)據(jù)透視表公式元素? ? 在為計算字段和計算項創(chuàng)建的公式中,可像在其他工作表公式中一樣使用運算符和表達(dá)式??墒褂贸A?,也可引用報表中的數(shù)據(jù),但不能使用單元格引用或定義的名稱。不能使用需要將單元格引用或定義的名稱作為參數(shù)的工作表函數(shù),也不能使用數(shù)組函數(shù)。
????字段和項名稱? ? Excel 使用字段和項名稱來標(biāo)識公式中的報表元素。在以下示例中,C3:C9 區(qū)域中的數(shù)據(jù)使用字段名稱“奶制品”。“類型”字段中的計算項(根據(jù)乳制品銷售額估算新產(chǎn)品的銷售額)可使用諸如 =奶制品 * 115% 等公式。

????在數(shù)據(jù)透視圖中,字段名稱顯示在數(shù)據(jù)透視表字段列表中,而項名稱顯示在每個字段的下拉列表中。不要將這些名稱與圖表信息中顯示的名稱混淆,圖表信息中的名稱反映系列和數(shù)據(jù)點名稱。
????公式針對總數(shù)(而不是單個記錄)進(jìn)行運算 計算字段公式針對公式中任何字段的基礎(chǔ)數(shù)據(jù)總和進(jìn)行運算。例如,計算字段公式 =銷售額 * 1.2 會將每個類型和地區(qū)的銷售總額乘以 1.2;而不是將單個銷售額乘以 1.2,然后對相乘得到的數(shù)進(jìn)行求和。
????計算項公式針對單個記錄進(jìn)行運算。例如,計算項公式 =奶制品 * 115% 會將每個乳制品銷售額乘以 115%,然后再將相乘所得的數(shù)匯總到“值”區(qū)域。
????名稱中的空格、數(shù)字和符號? ? 在包括多個字段的名稱中,這些字段可按任意順序排列。在上述示例中,單元格 C6:D6 可以是“‘四月 北部’”,也可以是“‘北部 四月’”。如果名稱包含多個單詞,或者包含數(shù)字或符號,請在該名稱兩邊加上單引號。
總計? ? 公式不能引用總計(如示例中的“三月總計”、“四月總計”和“總計”)。
????項引用中的字段名稱? ? 可在對項的引用中包括字段名稱。項名稱必須放入方括號中 - 例如 地區(qū)[北部]。如果某報表中兩個不同字段中的兩個項具有相同名稱,使用此格式可避免 #NAME? 錯誤。例如,如果報表的“類型”字段中有名為“肉類”的項,而“分類”字段中也有名為“肉類”的項,可將這兩個項分別引用為類型[肉類] 和分類[肉類],以防止 #NAME? 錯誤。
????按位置引用項? ? 可根據(jù)當(dāng)前排序和顯示,按照項在報表中的位置引用項。類型[1] 是“奶制品”,類型[2] 是“海鮮”。每當(dāng)項的位置發(fā)生更改,或者顯示或隱藏其他項時,通過這種方式引用的項也會隨之更改。隱藏項不會計入此索引。
????可使用相對位置引用項。相對于包含公式的計算項來確定位置。如果“南部”是當(dāng)前地區(qū),那么地區(qū)[-1] 是“北部”;如果“北部”是當(dāng)前地區(qū),那么地區(qū)[+1] 是“南部”。例如,計算項可使用公式 =地區(qū)[-1] * 3%。如果提供的位置在字段中第一個項之前或最后一個項之后,公式會引發(fā) #REF! 錯誤。
在數(shù)據(jù)透視圖中使用公式
????要在數(shù)據(jù)透視圖中使用公式,可在關(guān)聯(lián)的數(shù)據(jù)透視表(可在其中看到組成數(shù)據(jù)的各值)中創(chuàng)建公式,然后在數(shù)據(jù)透視圖中以圖形方式查看結(jié)果。

要了解銷售額增長 10% 后的情況,可在關(guān)聯(lián)的數(shù)據(jù)透視表中創(chuàng)建一個計算字段,使用諸如 =銷售額 * 110% 等公式。

要查看表示北部地區(qū)銷售額減去 8% 的運輸成本的數(shù)據(jù)標(biāo)記,可使用諸如 =北部 – (北部 * 8%) 等公式在“地區(qū)”字段中創(chuàng)建計算項。

但是,在“銷售員”字段中創(chuàng)建的計算項在圖例中顯示為系列,在每個圖表中顯示為各類別的數(shù)據(jù)點。