有時Excel數據透視表中的值字段較多,如果要全部更改其匯總方式,如將下圖數據透視表中所有值字段的匯總方式由“求和”改為“平均值”,手動逐個修改費時費力。
Excel雖沒有提供直接的批量更改方法,但在Excel 2013中,用一行VBA代碼可快速實現批量更改,方法是:
1、選擇數據透視表所在的工作表。
2、按Alt+F11,打開VBA編輯器。按Ctrl+G打開“立即窗口”。
3、在“立即窗口”中粘貼下列代碼:
For Each pf In ActiveSheet.PivotTables("數據透視表1").DataFields: pf.Function = xlAverage: Next
將光標定位到語句末尾按回車鍵,即可將數據透視表中全部值字段的匯總方式改為“平均值”。
說明:
1、“ActiveSheet.PivotTables("數據透視表1")”指定的數據透視表名稱為“數據透視表1”,需根據實際進行修改。在Excel 2013中,通過選擇“數據透視表工具-分析”選項卡,在功能區的最左側可看到數據透視表的名稱。
2、“pf.Function = xlAverage”指定值字段匯總方式為“平均值”。如果要按其他方式匯總,可參考下表進行修改:
xlSum 求和 xlCount 計數 xlAverage 平均值 xlMax 最大值 xlMin 最小值 xlProduct 乘積 xlCountNums 數值計數 xlStDev 標準偏差 xlStDevP 總體標準偏差 xlVar 方差 xlVarP 總體方差 xlUnknown 不指定任何匯總方式
如要將值字段的匯總方式批量改為“最大值”,將代碼中“pf.Function = xlAverage”改為“pf.Function = xlMax”。
3、匯總方式更改后,數據透視表中的字段名稱會自動更改,如“求和項:1月”自動改為“平均值項:1月”,這在以前的版本中還需用其他語句來實現。