本节将介绍使用不同范围和类型的数据源创建数据透视表的方法,包括位于独立区域的数据源、位于多个区域的数据源,以及来源于外部程序的数据源。
在Excel中,数据源分布方式的最简单情况是位于一个独立的单元格区域中,使用这种布局方式的数据源创建数据透视表的操作步骤如下:
(1)单击数据源区域中的任意一个单元格,然后在功能区的“插入”选项卡中单击“数据透视表”按钮,如图3-1所示。
(2)打开“创建数据透视表”对话框,在“表/区域”文本框中默认自动填入本例的数据区域A1:E61,如图3-2所示。
图3-1 单击“数据透视表”按钮
图3-2 “创建数据透视表”对话框
(3)不做任何修改,直接单击“确定”按钮,Excel将在一个新建的工作表中创建一个空白的数据透视表,并自动打开“数据透视表字段”窗格,如图3-3所示。
图3-3 创建的空白数据透视表
(4)从“数据透视表字段”窗格中,将“部门”字段拖动到“行”区域,将“性别”字段拖动到“列”区域,将“工资”字段拖动到“值”区域,完成后的数据透视表对各部门男、女员工的工资进行了汇总,如图3-4所示。
图3-4 使用布局字段构建报表
Excel允许用户同时使用多个区域中的数据来创建数据透视表,前提是这些区域具有完全相同的结构。使用这种布局方式的数据源创建的数据透视表,每个数据源区域将作为报表筛选字段中的一项,用户可以通过在报表筛选字段中选择特定的项,来查看各个数据源区域的汇总结果。
如图3-5所示,工作簿中包含3个工作表,分别对应于3个分公司的产品销售情况,3个工作表的数据结构完全相同。
图3-5 要汇总的3个工作表中的数据
为了对3个分公司的产品销量进行汇总分析,现在要使用这3个工作表中的数据创建数据透视表,操作步骤如下:
(1)依次按Alt、D、P键,打开“数据透视表和数据透视图向导”对话框,选中“多重合并计算数据区域”和“数据透视表”单选按钮,然后单击“下一步”按钮,如图3-6所示。
(2)进入如图3-7所示的对话框,选中“创建单页字段”单选按钮,然后单击“下一步”按钮。
图3-6 “数据透视表和数据透视图向导”对话框
图3-7 选中“创建单页字段”单选按钮
注意: 依次按Alt、D、P这3个键时,按下一个键之前,要先释放上一个键。
(3)进入如图3-8所示的对话框,在该界面中需要将3个工作表中的数据区域添加到“所有区域”列表框中。
图3-8 用于合并多个数据区域的界面
(4)单击“选定区域”右侧的“折叠”按钮 ,将对话框折叠,此时折叠按钮变为“展开”按钮 。单击“北京分公司”工作表标签,然后选择其中的数据区域(如A1:C7),如图3-9所示。
图3-9 选择第一个工作表中的数据区域
(5)单击“展开”按钮 ,展开对话框,然后单击“添加”按钮,将所选区域添加到“所有区域”列表框中,如图3-10所示。
(6)重复第(4)~(5)步,将其他两个工作表中的数据区域添加到“所有区域”列表框中,结果如图3-11所示。
图3-10 添加第一个工作表中的数据区域
图3-11 添加其他两个工作表中的数据区域
(7)单击“下一步”按钮,进入如图3-12所示的对话框,选择要在哪个位置创建数据透视表,此处选中“新工作表”单选按钮,然后单击“完成”按钮,创建如图3-13所示的数据透视表。
图3-12 选择创建数据透视表的位置
图3-13 使用多个区域创建的默认数据透视表
(8)右击数据透视表中的“计数项:值”字段,在弹出的菜单中选择“值汇总依据”|“求和”命令,将值的汇总方式改为“求和”,如图3-14所示。
图3-14 将值的汇总方式改为“求和”
(9)单击数据透视表中的“列标签”字段右侧的下拉按钮,在打开的列表中取消选中“产地”复选框,然后单击“确定”按钮,如图3-15所示。最终完成的数据透视表如图3-16所示。
图3-15 取消选中“产地”复选框
图3-16 最终完成的数据透视表
提示: 为了让数据透视表中的数据含义更易于理解,可以修改各字段的名称,具体方法将在3.3.6节进行介绍。
第2章介绍了将其他程序创建的数据导入到Excel中的方法。实际上,用户可以直接使用其他程序创建的数据来创建数据透视表,而无须先将这些数据导入Excel之后再创建数据透视表。
如图3-17所示是要创建数据透视表的文本文件中的数据,现在要在不将其导入Excel的情况下直接为其创建数据透视表。操作过程中的第(1)、(2)步与2.3.1节的第(1)、(2)步相同,为了避免内容重复,因此下面只给出后面不同的步骤。
图3-17 文本文件中的数据
在选择本例中的文本文件之后,将打开如图3-18所示的对话框,由于本例中的文本文件中各列数据也是使用制表符分隔,因此对话框中的设置与2.3.1节第(3)步相同。
图3-18 为文本文件设置适合的选项
接下来的操作将有所不同,需要单击“加载”按钮右侧的黑色三角,在弹出的菜单中选择“加载到”命令,如图3-19所示。
打开“导入数据”对话框,选中“数据透视表”单选按钮,如图3-20所示,然后单击“确定”按钮。将使用所选择的文本文件中的数据创建数据透视表,之后将字段拖动到所需的区域中来构建报表,如图3-21所示。
图3-19 选择“加载到”命令
图3-20 选中“数据透视表”单选按钮
图3-21 使用文本文件中的数据创建的数据透视表
数据透视表缓存是一个数据缓冲区,用于在数据透视表与数据源之间传递数据。在Excel 2003中使用相同的数据源创建的每一个数据透视表,都有一个与其匹配的数据透视表缓存。但是在Excel 2007或更高版本的Excel中,使用相同的数据源创建的所有数据透视表共享同一个数据透视表缓存。
共享数据透视表缓存的优点是可以减少内存的占用,并可避免工作簿的体积随数据透视表数量的增多而显著变大,但是共享数据透视表缓存也有以下两个问题:
● 刷新任意一个数据透视表,共享同一个数据透视表缓存的其他数据透视表也将随之自动刷新。
● 在任意一个数据透视表中添加计算字段和计算项,或对指定字段进行组合之后,操作结果将自动作用于共享同一个数据透视表缓存的其他数据透视表。
如果希望在Excel 2007或更高版本的Excel中,在使用相同的数据源创建数据透视表时不共享同一个数据透视表缓存,那么可以使用3.1.2节用到过的“数据透视表和数据透视图向导”对话框,操作步骤如下:
(1)单击数据源中的任意一个单元格,依次按Alt、D、P键,打开“数据透视表和数据透视图向导”对话框,不做任何设置,直接单击“下一步”按钮。
注意: 在数据源所在的工作簿中必须已经创建了至少一个数据透视表。
(2)进入下一个界面,Excel会自动填入数据源所在单元格区域的地址,直接单击“下一步”按钮。
(3)如果在第(2)步中填入的数据源范围与工作簿中现有的数据透视表所使用的数据源的范围相同,将会显示如图3-22所示的对话框,单击“否”按钮,将创建一个新的数据透视表缓存,而不是使用现有的数据透视表缓存。
图3-22 选择是否共享同一个数据透视表缓存