一、GETPIVOTDATA函数语法
函数功能肀返回存储在数据透视表中的数据。如果报表中的汇总数据可见,则可以使用函数 GETPIVOTDATA 从数据透视表中检索汇总数据。
注释:通过以下方法可以快速地输入简单的 GETPIVOTDATA 公式:
在返回值所在的单元格中,键入“=”,然后在数据透视表中单击包含要返回的数据的单元格。
语法
GETPIVOTDATA(data_field,pivot_table,field1,item1,field2,item2,...)
Data_field 为包含要检索的数据的数据字段的名称,用引号引起。
Pivot_table 在数据透视表中对任何单元格、单元格区域或定义的单元格区域的引用。该信息用于决定哪个数据数据透视表包含要检索的数据。
Field1, Item1, Field2, Item2 为 1 到 14 对用于描述检索数据的字段名和项名称,可以任何次序排列。字段名和项名称(而不是日期和数字)用引号引起来。对于 OLAP 数据透视表,项可以包含维的源名称,以及项的源名称。OLAP 数据透视表的一对字段和项如下所示:
"[产品]","[产品].[所有产品].[食品].[烤制食品]"
说明
在函数 GETPIVOTDATA 的计算中可以包含计算字段、计算项及自定义计算方法。
如果 pivot_table 为包含两个或更多个数据透视表的区域,则将从区域中最新创建的报表中检索数据。
如果字段和项的参数描述的是单个单元格,则返回此单元格的数值,无论是文本串、数字、错误值或其他的值。
如果某个项包含日期,则值必须表示为序列号或使用 DATE 函数,这样如果在其他位置打开电子表格,该值仍然存在。例如,某个项引用了日期“1999 年 3 月 5 日”,则应输入 36224 或 DATE(1999,3,5)。时间可以输入为小数值或使用 TIME 函数来输入。
如果 pivot_table 并不代表找到了数据透视表的区域,则函数 GETPIVOTDATA 将返回错误值 #REF!。
如果参数未描述可见字段,或者参数包含未显示的页字段,则 GETPIVOTDATA 函数将返回 #REF!。
二、数据透视表与getpivotdata的综合使用
包含数据透视表的区域为:
GETPIVOTDATA("销售额",$A$4) 返回“销售额”字段的总计值 $49,325。
GETPIVOTDATA("求和项:销售额",$A$4) 也返回“销售额”字段的总计值 $49,325。字段名可以按照它在工作表上显示的内容直接输入,也可以只输入主要部分(没有“求和项:”、“计数项:”等)。
GETPIVOTDATA("销售额",$A$4,"月份","三月") 返回“三月”的总计值 $30,337。
GETPIVOTDATA("销售额",$A$4,"月份","三月","产品","农产品","销售人员","Buchanan") 返回 $10,201。
GETPIVOTDATA("销售额",$A$4,"地区","南部") 返回错误值 #REF!,这是因为“南部”地区的数据是不可见的。
GETPIVOTDATA("销售额",$A$4,"产品","饮料","销售人员","Davolio") 返回错误值 #REF!,这是因为没有“Davolio”饮料销售的汇总值。