本类文章的标签为 ‘数据透视表’


修改数据透视表

1 颗星2 颗星3 颗星4 颗星5 颗星 (目前还没有人投票)
Loading ... Loading ...

下面,我们来修改在《创建数据透视表》中创建的保险数据透视表。你将会看到当源表中的数据改变时会发生什么,学习如何查看不同类型的数值汇总,还将使用内置的格式功能来修改数据透视表的外观。最后,如果不再需要数据透视表,可以删除它。
改变数据透视表
有时,你会创建数据透视表并且让它保持相同的布局且无须修改字段。每周或每月,你将更新数据,基于数据透视表汇总来查看结果或者分发报表。然而,有一些数据透视表需要经常变化,因为它们用于创建特别的报表。这里,通过使用不同的字段汇总数据,从而使用相同的数据和透视表来创建更多特别的报表。
1、清除数据透视表
在Midwest地区有洪水威胁,现在要求你报告每个地区有洪水分布和没有洪水分布保单的保险价值。你将清除数据透视表的内容,然后创建新的布局产生需求报表。
注:也可以通过取消选中“数据透视表字段列表”中的复选框分别移除现有的字段。
步骤1 选择数据透视表中的任一单元格。
步骤2 单击“数据透视表工具——选项”。
步骤3 在“操作”组中,单击“清除”,然后单击“全部清除”,如下图所示。
ModifyPivotTable1
将清除数据透视表中所有字段,仅在工作表中可见空的布局。“数据透视表字段列表”仍然包含所有源数据中的字段。
2、添加字段到数据透视表的特定区域
在《创建数据透视表》中,选中字段列表里的字段,Excel自动将其放置在区域部分和工作表的数据透视表布局中。后来,移动字段到不同的区域。
除了接受自动放置字段外,还可以控制在哪里放置字段。对于洪水分布报表,希望在行标签区列出区域,列标签区列出洪水分布,并显示每个区域和分布类型总的保险价值。
步骤1 在“数据透视表字段列表”窗格,选取InsuredValue字段。
因为InsureValue字段包含数字数据,Excel自动将其放置在数值区域。
步骤2 选取Region字段。
因为Region是文本字段,Excel自动将其放置在行标签区域。
步骤3 在数据透视表布局中添加Flood字段,但想将其放置在列标签区域,而不是行标签区域。在“数据透视表字段列表”窗格的字段部分,将Flood字段拖动到列标签区域,如下图所示。
ModifyPivotTable2
此时,Flood字段出现在数据透视表的列标签区域,显示N表明没有洪水分布而Y则是有洪水分布的保单。
步骤4 为使数值更容易阅读,可以进行格式化。在数据透视表中任何数值上单击右键,从上下文选项卡中选择“数字格式”。
步骤5 在“设置单元格格式”对话框中,选择“数值”类别。
步骤6 设置小数位位数为0,选取“使用千位分隔符”,单击“确定”。
使用数值格式后,可以看到保险价值中超过3百万是洪水分布区的财产,而只有大约1百万是没有洪水分布区的财产。在Midwest地区,大约一半的保险价值是洪不分布区的财产。
添加报表筛选
你已经报告了每个区域的全部汇总数,但理赔经理想要更多的信息。每份保单为商业的特定类型,下一份报表应该显示制造业总的保险价值。为了限制汇总数据中包括的项目,通过使用存储商业类型数据的BusType字段在数据透视表中添加筛选。
步骤1 在“数据透视表字段列表”窗格中,将BusType字段拖动到“报表筛选”区域,如下图所示。
ModifyPivotTable3
在工作表中,Excel在数据透视表的顶部添加BusType字段并带有项目(全部),如下图所示。数据透视表中的值没有变化。
ModifyPivotTable4
步骤2 单击“(全部)”右侧的下拉箭头,看到商业类型列表。从源数据中的每种商业类型列于此。
步骤3 筛选数据,仅看到制造业类型。于是,单击“Manufacturing”,单击“确定”,如下图所示。
ModifyPivotTable5
数据透视表中的值改变了,现在仅显示对制造业卖出的保单的总的保险保值。在Midwest地区的总保险价值中,洪水分布区的制造业仅有2.5百万元,下图所示。
在工作表的单元格B1中,下拉箭头已经改变为带有小的蓝色箭头的筛选符号。在“数据透视表字段列表”窗格中,有一个筛选图标在BusType字段的旁边,表明该字段应用了筛选。
ModifyPivotTable6
应用筛选后,也可以看到对于制造业,在Central区卖出的所有保单都在洪水分布区,而在Northeast区的洪水分布区没有卖出保单。
1、改变筛选
现在,你已经报告了制造业的汇总,你又被要求做出Midwest的零售业报表。要看到不同商业类型的结果,可以从报表筛选列表中选择不同项。
步骤1 单击BusType报表筛选箭头,打开项目列表。
步骤2 在列表中单击“Retail”,单击“确定”。
数据透视表现在显示零售业类型的总计。在Midwest地区总的保险价值,并且其洪水分布区的零售业仅5.7百万元。
步骤3 要查看所有商业类型的总和,从报表筛选列表项的顶部选择“(全部)”。
2、多项筛选
理赔经理要求的下一个报表是Midwest里的办公建筑和住宅,它们是相似的商业类型,报表应该显示合计数。下面,同时对Apartment和Office Bldg保单应用筛选。
步骤1 在数据透视表中,单击BusType报表筛选下拉箭头。
步骤2 在列表的底部,选取“选择多项”复选框。
步骤3 复选框出现在商业类型项目的旁边,并且选择了多个项目。在数据透视表中,选择(全部),将选中所有的项目,如下图所示。
ModifyPivotTable7
步骤4 要快带移除所有项目的选取,单击(全部)复选框取消选择,将清除列表中所有的复选标记。此时,除非选取至少一项,否则“确定”按钮不可用。
步骤5 选取“Apartment”和“Office Bldg”。
步骤6 单击“确定”并闭列表并应用筛选。
现在,BusType报表筛选显示“(多项)”,表明选择了两个或多个项目,如下图所示。数据透视表显示办公建筑和住宅的汇总值,能够看出大多数保险价值在洪水分布区的保单中。
ModifyPivotTable8
3、移除报表筛选
如果不再需要报表筛选,那么可以从数据透视表中将其移除。现在,已经完成了通过商业类型分析保单,因此将移除报表筛选:
步骤1 选择数据透视表中的任一单元格。
步骤2 在“数据透视表字段列表”窗格,取消“BusType”字段名前的复选。
将从数据透视表中移除报表筛选,并且值为源数据中所有记录的汇总。
当从数据透视表布局中移除筛选字段时,其最后的设置将被记住。在从数据透视表布局中移除BusType字段之前,选择Apartment和Office Bldg项来筛选数据透视表。在“数据透视表字段列表”窗格中,BusType字段仍然显示筛选图标,表明该字段有一个应用的筛选。因为该字段不在数据透视表布局中,所以该筛选当前不会影响显示的数据。
要看到这个被保留的筛选,可以在“数据透视表字段列表”中检查BusType字段,同时也能够修改该字段的筛选设置。
步骤1 在“数据透视表字段列表”中,单击“BusType”字段。
步骤2 在字段名中(见下图)单击箭头打开字段的排序和筛选列表。
ModifyPivotTable9
步骤3 在排序和筛选列表中,可以看到Apartment和Office Bldg项仍然被选择。筛选列表左边的复选标记表明该字段有一个应用的筛选。
ModifyPivotTable10
步骤4 既使BusType字段不在数据透视表布局中,也可以改变其筛选设置。要移除该筛选,单击“从BusType中清除筛选”,如上图所示。
步骤5 筛选和排序列表关闭,在“数据透视表字段列表”的BusType中的筛选图标被移除。
更新数据透视表
在创建数据透视表之后,它仍然连接着源数据。如果对源数据作出了改变,例如添加新记录或者删除记录,那么可以更新数据透视表来反映变化。
1、改变源数据
你了解到在保单源数据的保险价值中有一个错误,必须修正金额,而且,已经卖出了另一份保单,必须在源数据中添加相应的信息。现在,返回到包含源数据的Excel表来进行修改:
步骤1 在Excel表中,找到保单为100208的行,选择保险价值($30,000),这是一个不正确的金额。
步骤2 输入正确的金额($3,000,000),按回车键完成输入。
步骤3 移动到表的末尾,输入一条新记录。
向下移动的一种快速方式是将鼠标指针指向活动单元格的底部,然后双击,如果该列中没有空单元格,则会移至该列的末尾,否则移至空单元格之上的单元格中。
步骤4 在新行中输入记录。
要从该单元格上面的单元格中复制数据,按下Ctrl键的同时,输入“’”。
2、在数据透视表中查看新数据
现在已经完成了对源数据的修改,返回到数据透视表并更新,以便能够看到修正好的保险数据汇总。你改正了East地区的保险价值金额,为Midwest添加了一份新保单,因此这些地区的总数应该增加,总计值也应该增加。
步骤1 选择数据透视表中的任一单元格。
步骤2 单击“数据透视表工具——选项”选项卡。
步骤3 在“数据”组,单击“刷新”按钮,使用新的和修正的数据来更新数据透视表。
ModifyPivotTable11
步骤4 在数据透视表中,数据被更新,显示了East地区和Midwest地区新的汇总和总计,如下图所示。你可以与上文中相应的数据进行对比,看看数据透视表是否更新为新的新据。
当然,也可以在数据透视表中单击右键,从上下文选项卡中选择“刷新”命令。
ModifyPivotTable12
改变汇总函数
当前,数据透视表为每个地区显示InsuredValue求和项。现在希望在每个地区的洪水分布区卖了多少份保单,没有洪水的区域卖了多少份保单。下面,将修改数据透视表中的设置,以便能够看到对InsuredValue字段的不同汇总。
步骤1 在数据透视表中,在数值区域的任意单元格中单击右键。
步骤2 在出现的上下文菜单中,单击“数据汇总依据”。在函数列表中,选取了“求和”函数,因为它是当前InsuredValue字段使用的函数。
步骤3 单击“计数”,通过此函数汇总数据,如下图所示。
ModifyPivotTable13
步骤4 在数据透视表中,数据改变为显示InsuredValue单元格的数量。总计为928,这是保险表中保单记录的数量。
ModifyPivotTable14
应用数据透视表样式
现在,已经按你想要的方式设置了汇总信息,那么可以花一些时间来修饰数据透视表的外观了。修改外观可以使数据更易阅读,并且可能想使用某种配色方案以便和其它文档相适应。
当创建数据透视表时,Excel自动应用了格式。要快速地改变数据透视表的外观,可以应用内置的数据透视表样式。这可能会影响颜色和字体格式,可能添加边框和行或列阴影。
步骤1 选择数据透视表中的任一单元格。
步骤2 单击“数据透视表工具——设计”选项卡。
步骤3 在“数据透视表样式”组中,可以看到已经选择了一种样式,其周边带有边框。
步骤4 指向该样式,其名称将出现在屏幕提示中(如下图),除非关闭了屏幕提示功能。
ModifyPivotTable15
步骤5 指向其他的数据透视表样式,工作表中的数据透视表将出现该样式的预览。
步骤6 要看到其他样式,单击数据透视表样式组右侧的向上或向下按钮。
步骤7 要打开完整的数据透视表样式库,单击右侧的“更多”按钮。
步骤8 在库中,向上和向下拖动滚动条查看数据透视表样式,它们被分成了浅色、中等深浅和深色组。
步骤9 找到喜欢的样式后,单击应用该样式。
删除数据透视表
工作簿中可以包含一个或多个数据透视表,这些数据透视表可以基于相同的数据,也可以基于不同的数据。有时,可能想完全删除某个数据透视表。
步骤1 选择数据透视表中的任一单元格。
步骤2 单击“数据透视表工具——选项”选项卡。
步骤3 在“操作”组中,单击“选择——整个数据透视表”。
步骤4 当选择数据透视表时,按键盘中的“删除”键。Excel删除数据透视表,“数据透视表字段列表”将从视图中消失。
如果要删除带有数据透视表的工作表,在工作表标签中单击右键,从上下文选项卡中选择“删除”命令。
小结
在本文中,你扩充了你的基本的数据透视表技术。学习了如何清除数据透视表,如何在数据透视表的指定区域添加字段。
你添加了报表筛选并使用它来查看指定商业类型的汇总数据。你修改报表筛选,从筛选列表中显示多项数据。当不在需要报表筛选时,将其移除。
接下来,你修改了源数据表中的数据,添加了新数据,然后刷新数据透视表更新其汇总数据。你修改了在InsuredValue字段中使用的汇总函数,使用计数代替求和。
你应用数据透视表样式,使数据透视表中的数据更容易阅读。
最后,你学习了如何删除整个数据透视表。
现在,已经介绍了创建和修改数据透视表的基础知识。在随后的文章中,将深入研究数据透视表的功能,你将看到如何创建更复杂的数据透视表报表。

相关文章

创建数据透视表

1 颗星2 颗星3 颗星4 颗星5 颗星 (1 人投票, 平均: 4.00 out of 5)
Loading ... Loading ...

在上文中,我们初步了解了数据透视表,并使用了一个Excel保险单表,详见:

下面,我们仍然沿用该示例介绍如何创建数据透视表,以及如何快速地改变数据透视表的布局以获得不同的数据视图。并且,还将从数据透视表数据中创建数据透视图,从而创建可视化的汇总,使数据更容易理解。
公司在四个不同的地区卖保险单,理赔经理想知道对于卖出的保单哪个地区有最高的保险价值。在保险数据中,地区名称在列F,列标题为Region;保险价值在列G,列标题为InsuredValue。如下图所示。
createpivottable1
要找到地区总计而不使用数据透视表,则需在工作表中列出地区,然后使用公式汇总保险价值,还有一个公式是汇总区域总计而得出总数之和。结果如下图所示。
createpivottable2
代替手工创建汇总表,可以创建数据透视表来快速且容易地获得相同的结果。首先,创建空数据透视表,然后拖动数据到数据透视表中以创建地区标签并汇总保险价值。
步骤1 选择已格式化的Excel表中任一单元格。
步骤2 在“表工具”选项卡中单击“设计”选项卡。
步骤3 在“工具”组中,单击“通过数据透视表汇总”,如下图所示。
createpivottable3
步骤4 在“创建数据透视表”对话框中,在“请选择要分析的数据”下,选项“选择一个表或区域”被选择,在“表/区域”文本框中是活动表的名字Insurance,如下图所示。保持默认的选择。
createpivottable4
步骤5 在“选择放置数据透视表的位置”下,已默认选择“新工作表”,保持默认的选择,单击“确定”。
创建数据透视表布局
当关闭“创建数据透视表”对话框后,Excel插入一个新工作表,并且以单元格A3开始放置数据透视表轮廓。在Excel窗口的右侧,出现“数据透视表字段列表”窗格。
createpivottable5
在“数据透视表字段列表”窗格顶部是Excel表的列标题列表,显示顺序与Excel表中的顺序相同。在数据透视表中,它们被称作字段。
在“数据透视表字段列表”窗格底部是数据透视表的四个区域:报表筛选、列标签、行标签和数值。拖动字段到这些区域中,它们将出现在工作表中数据透视表布局的相应区域(如下图所示)。
createpivottable6
在数据透视表布局中添加字段
本例中,我们想看到每个区域的保险价值汇总列表。在设计数据透视表时,要决定使用的字段,然后确定每个字段应该被拖放到数据透视表布局的哪个部分。
区域名称是Region字段,因此这是本例中数据透视表需要使用的一个字段。其他需要的字段是InsuredValue字段,它将提供金额汇总。
因为希望区域名称列表在数据透视表的左侧,所以应该在行标签区域放置Region字段。要看到InsuredValue金额总和,应该将该字段放置到数值区域。
完成设计后,应可以使用“数据透视表字段列表”在数据透视表布局中添加字段了。
步骤1 在“数据透视表字段列表”顶部的字段列表中,选取“Region”字段。
因为它包含文本数据,所以Region字段被自动添加到“数据透视表字段列表”底部的“行标签”区域。在工作表中,区域名称出现在数据透视表的行标签区域中,如下图所示。
createpivottable7
步骤2 在“数据透视表字段列表”窗格中,选取InsuredValue字段。因为该字段包含数字,所以会被自动添加到数值区域。
注:基于包含的数据类型,默认情况下字段会被添加到数据透视表的特定区域。可以手工放置字段在数据透视表的不同区域。
此时,在工作表中InsuredValue的总和出现在数据透视表的数值区域,显示每个区域保险价值的总和,如下图所示。
createpivottable8
注:只需几次简单地单击鼠标,没有运用复杂的公式,就可以轻而易举地汇总差不多1000行记录,显示每个区域总的保险价值。快速且容易汇总数据的能力是使用数据透视表的主要好处之一。
改变数据透视表布局
使用数据透视表汇总数据的优势之一是,在创建数据透视表后容易修改数据透视表的布局。现在,已经创建了一个汇总每个区域保险价值的数据透视表。接下来,修改数据透视表布局来查看其他的数据汇总。下面,你将看到如何快速且容易地创建不同的汇总。
保险经理关心投保财产中的火灾风险,要求每类建筑总的保险价值的报表。在Excel表中,Construction列显示每个投保财产的建筑类型。可以快速修改数据透视表布局,展示Construction字段的汇总。
目前,Region字段在行标签区域。现在,移除该字段,并拖动Construction字段以行标签区域。
步骤1 在“数据透视表字段列表”窗格中,取消Region字段前的选择。
数据透视表中的行标签区域消失,InsuredValue求和项显示所有记录的总和。
步骤2 在“数据透视表字段列表”窗格中,选取Construction字段。
行标签现在显示为建筑类型,InsuredValue求和项显示每种建筑类型的保险价值的总计。
createpivottable9
将这份报表发送给保险经理,表明框架结构的建筑物几乎占所有卖出的保单总保险价值的三分之二。
在数据透视表中添加更多的字段
在收到报表后,保险经理要求更详细的信息。在市内和郊区位置卖出的建筑物保单,并且如果将结构类型分解成位置类型来显示保险价值,那么报表将更有帮助。框架建筑在市区吗?这样防火部门能够快速响应。
当前,Construction是行标签区域里的唯一字段,因此数据透视表显示每种构造类型的所有保单总的保险价值。为了查看更详细的汇总,也可以添加Location字段到行标签区域,通过结构和位置(市区和效区)来显示保险价值。
在“数据透视表字段列表”窗格中,选取Location字段。
Location字段被添加到“数据透视表字段列表”窗格中的行标签区域,在Construction字段的下面。
在工作表的数据透视表布局中,行标签区域显示每种结构类型作为标题,在每种结构类型标题下面是位置类型列表。在结构标签下面,位置标签稍微有点缩进。在InsuredValue求和区域显示了每种结构类型的汇总数,在结构类型里有每种位置类型的汇总数。
createpivottable10
给保险经理发送这份更详细的报表,表明大多数框架结构建筑物在市区,仅仅一小部分框架建筑物的保单在郊区。
在数据透视表布局中添加更多的字段
保险经理很欣赏你所做的工作,并且对你能够如此快速地调整报表感到很满意。然而,这位经理有更进一步的需求:除了汇总构造类型的保险价值外,还要汇总每种位置类型的保险价值。
目前,在行标签区域使用了两个字段,数据透视表像带有标题和子标题的报表一样排列。如果在数据透视表的左侧有一组标题,在顶部有另一组标题,那么就可以创建列汇总和行汇总。如果使用公式手工创建这样的表,将如下图所示。在单元格B11中的公式显示在编辑栏中。
createpivottable11
要在数据透视表中获得这样的结果,需要将Location字段从行标签区域移动到列标签区域,位置将成为数据透视表布局顶部的标签。这样,修改的布局包括了保险经理需要的位置汇总信息。
步骤1 在“数据透视表字段列表”窗格的行标签区域,鼠标指向Location字段。
步骤2 当指针变为十字箭头时,拖动该字段到列标签区域,如下图所示。
createpivottable12
此时,数据透视表布局改变。行标签区域仅显示结构类型,而顶部的列标签显示位置类型,如下图所示。
createpivottable13
在数据透视表的底部是总计行,显示了每类位置类型的保险价值汇总数。在数据透视表的右侧是总计列,显示了每类结构类型的保险价值汇总数。右下侧底部单元格是保险价值的全部汇总数。
虽然布局不同,但是你可以比较上面的几个图,数值区域的汇总数是相同的。
使用这个布局,能够给保险经理显示框架结构建筑物有最高的保险价值,市区比郊区的保险价值汇总数更高。
在数据透视表中绘制数据图表
保险经理对报表是满意的,并且发现位置汇总对于分析保单数据是有帮助的。为了帮助对执行委员会解释结果,经理问是否可以创建图表来演示结果。
步骤1 选择数据透视表中的任一单元格。
步骤2 按F11键。
Excel插入一个图表工作表,其中基于当前数据透视表创建了数据透视图。Contruction字段行标签成为类别轴字段,而Location字段列标签成为了系列,如下图所示。
createpivottable14
数据透视图显示,到目前为止,城区框架结构建筑物的保单占已经卖出的保单中的大部分。其中,郊区的防火建筑物保险价值如此之低以致于没有在图表中显示。
小结
在本文中,学习了创建数据透视表,添加诸如行标签、列标签和数值等字段。同时,通过从一个区域移动字段到另一个区域来修改数据透视表布局。
只需要几次单击鼠标,无须复杂的公式,就能汇总几乎1000条记录,显示每个区域保单的保险价值汇总数。这就是数据透视表在分析数据方面的强大功能。
最后,从数据透视表创建数据透视图,获取数据透视表数据有效的可视化汇总。

相关文章

数据透视表初步

1 颗星2 颗星3 颗星4 颗星5 颗星 (目前还没有人投票)
Loading ... Loading ...

使用Excel数据透视表,可以从完全不同的角度来查看数据。使用数据透视表,可以汇总上千行数据,显示总计、平均、或其它计算。下面的内容介绍数据透视表的概念,使用数据透视表的好处,以及如何准备数据以便使用这些数据作为数据透视表的数据源。
什么是数据透视表
数据透视表是Excel中的一个工具,能够帮助汇总成千上万行数据为简洁的报表。
理解使用数据透视表的好处
有些人避免使用数据透视表,因为他们觉得数据透视表是复杂的并且难以使用。这些人错过了Excel的一个最强大且容易使用的功能,当他们花费时间编写复杂的公式来汇总数据时,你只需要使用鼠标几分钟就能在数据透视表中汇总数据。
无论你正在处理财务数据、销售订单、顾客服务报表、站点统计、资源跟踪、事件计划、或任何其它记录,数据透视表都能帮助你查看、分析、监控、以及汇报数据。当报表需要改变时,可以对数据透视表稍作调整来代替重新汇总工作表。
Excel 2007中,一些数据透视表功能已经发生了根本的变化,包括创建数据透视表的方式,同时还提供了新的和改进的格式工具以及更容易连接Excel外部数据的方式。
准备创建数据透视表(设计源数据)
在创建数据透视表之前,需要收集数据并且以Excel能够使用的方式组织数据。在创建数据透视表之前,可能数据已经进行了正确的格式化,或者可能必须做一些准备工作。可以在Excel工作簿、外部数据库、或者其他数据源……甚至是在文本文件中组织数据。在创建数据透视表之前,没有太多的规则,但是正确地设置源数据是重要的。花一些时间准备数据,确保从创建的数据透视表中获得最好的结果。
1、设计数据透视表的数据源
许多数据透视表都是从Excel的工作表数据中创建的,下面的示例在Excel中组织数据作为数据透视表的源数据,源数据由许多行和列或者成千上万行和列组成,但是基本的布局需求是相同的。
在下面的示例中,涉及以保险公司的保单信息。当你卖出一份新保单时,会记录一些信息,例如该份保单的开始和结束日期、投保的商业类型、在哪里购买的保险、投保财产的价值。你希望分析保单数据,了解在每个区域中投保的商业类型,以及每类建筑投保值总计。
示例数据截图如下:
pivottablebasic1
2、在行和列中组织数据
必须在行和列中组织作为数据透视表数据源的Excel数据,每行包含一条记录的信息,本例中每行包含关于一份保单的信息。以相同的顺序存储每条记录中的信息,第1列是保单编号、第2列是开始日期,等等。第1行包含标题,表明存储在每列中的信息。列也被称作字段,第1行中的标题是字段名。本例共有11列、927行数据。
3、添加列标题
源数据中每列必须包含标题,应该使用简短的、具有描述性的、独立的标题。标题应该简要地说明包含在列中的特定的数据,本例中EQ是一个简洁的标题,表明是否在地震区域。
虽然可以为多列使用相同的标题,但是这会导致使用数据透视表的人混淆。如果标题重复,那么在创建数据透视表时Excel将会添加数字使标题唯一。
如果试图从包含空标题单元格的数据中创建数据透视表,将会出现错误。
4、在每列中输入简单的数据
源数据的每列应该包含一种类型的数据。示例中,列B包含日期,列G包含贷币值,列H包含文本。
5、将数据分成多列
要创建有效的数据透视表,一些源数据应该被分成多列,而不是使用单列。例如,包含完整的地址的列,应该分成3列:一列代表街道,一列代表城市,一列代表州。这样,可以通过城市或州来分析数据。
6、移除重复列
不要创建存储相同类型信息的多列,这会造成难以通过数据透视表分析特定的数据。
7、在每行中输入相关的数据
源数据中每行应该包含一条记录的详细信息。如有可能,为每行设置独立的标识符,例如本例中的保单编号。这将更容易跟踪数据透视表中的信息。
8、创建独立的数据块
源数据中不应该有任何空行,不能包含任何完整的空列。如果由于美观的原因,希望源数据里显示空列,那么该列必须至少包含标题,可以将标题格式化为与单元格背景相同的颜色,使它显示好像是空。
源数据应该与工作表中的任何其他数据分隔开,至少在源数据与其他数据之间放置一个空行和一个空列。理想的情形是工作表中仅存在唯一的源数据,将其他数据移到到单个的工作表中。在本例中,没有空行和空列,工作表中没有其他数据。
创建Excel表
准备源数据的最后一步是,从工作表的数据中创建Excel表,这将激活特别的功能,例如自动扩展作为添加到现有数据末尾的新行的能力。
使用Excel表功能,更容易维护数据透视表的源数据。在Excel表中,如果添加行或列,那么当更新数据透视表时自动包括新数据。如果基于非格式化的源数据的数据透视表,那么不会发现新行或新列,必须手工调整源数据区域,确保在数据透视表中包括新数据。或者,你可能忘记调整源数据区域来包括新数据,数据透视表显示不准确的结果。
Excel表具有很多有用的功能和好处,包括自动包括新创建的行和列、使标题始终可见、Excel会自动给表命名、可以快速且容易地排序和筛选数据。
小结
数据透视表是一个强大的Excel工具,能够用于快速分析大量的数据。并且,很容易创建数据透视表,只需几次鼠标单击。
在创建数据透视表之前,应该设置数据源。为了创建有效的数据透视表,应该确保正确地构造数据源。通常,源数据应满足下列要求:

  • 以行和列形式组织数据
  • 每列有一个唯一的、有描述性的标题
  • 每列中有相似的数据
  • 诸如详细地址信息数据应该被分隔到多列中
  • 不要有存储相似数据的重复列
  • 每行包含一条记录的相关数据
  • 数据是工作表中的独立块

准备源数据最好的方法是将其格式化为Excel表,这样在添加数据时将自动扩展。Excel表工具也很容易进行排序和筛选,因此能够检查数据透视表的数据,或者在发生问题时解决问题。

注:本文源自Debra Dalgleish的《Beginning PivotTables in Excel 2007》.

相关文章

使用Excel开发简易的零星工程项目管理系统

1 颗星2 颗星3 颗星4 颗星5 颗星 (1 人投票, 平均: 4.00 out of 5)
Loading ... Loading ...

在工作中,零星工程项目是最令人头疼的,又杂又乱,项目繁多且大小不一,一直不好管理。这几天,试着利用Excel做了一个简易的零星工程项目管理系统,以方便对零星工程项目的管理。当然,先试用,然后再作进一步的改进和完善。大家如果有兴趣,可以下载附件的示例,给我提提意见或建议。
#1对于简单的数据库,Excel是一个好的选择。设计良好的Excel工作表和结构可以帮助很好地组织和管理数据,并制作报表)
设计数据输入工作表
下面是数据工作表,名为“工程清单”,共15列。
projectmanagementsimple1
除序号外,其它列的信息为项目信息和跟踪信息。
考虑到查询的需要,当输入一个新项目后,有一些必填项,因此,在工作表中使用了条件格式,如果这些必填项未填写,该行将呈现红色,如下图所示。
projectmanagementsimple2
只有当必填项填写完成,红色才消失。
条件格式公式如下:

=AND($A2<>“”,OR($E2=”",$G2=”",$I2=”",$K2=”",$M2=”",$N2=”"))

即当第1列不为空时,列E、列G、列I、列K、列M、列N必须要有输入。
#2防错性设计。即利用Excel提供的功能提示用户必须的操作或不需要的操作)
同时,动态命名工作表中的列表数据。

名称:ProjectList
公式:=OFFSET(工程清单!$B$1,0,-1,COUNTA(工程清单!$B:$B),15)

这样,添加数据后,命名区域立即更新。
#3动态命名。使用公式动态命名区域,可以保持使用工作表中最新的数据。)
设计查询工作表
在“工作查询”工作表中,选择相应的查询条件后,下方显示满足条件的所有数据记录。
projectmanagementsimple3
黄色单元格区域可以选择条件。选择后,相应的记录在下方显示。
在这个工作表中,有5个命名区域:

SelSQ=工作查询!$B$3
SelMKS=工作查询!$C$3
SelWG=工作查询!$B$6
SelYS=工作查询!$C$6
SelEmployee=工作查询!$F$3
ExtractProjects=工作查询!$A$8:$O$8

其中,B3、C3、B6、C6都使用了简单的数据有效性,F3中的数据有效性使用了名称,即“人员列表”工作表中获取人员姓名(下文讲述)。
该工作表模块对应的代码为:

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim rngCrit As Range
    Set rngCrit = Nothing
    Application.EnableEvents = False
    On Error GoTo exitHandler
    Select Case Target.Address
        Case Range("SelSQ").Address
            Set rngCrit = wksCrit.Range("CriteriaSQ")
            Range("SelMKS").ClearContents
            Range("SelWG").ClearContents
            Range("SelYS").ClearContents
            Range("SelEmployee").ClearContents
        Case Range("SelMKS").Address
            Set rngCrit = wksCrit.Range("CriteriaMKS")
            Range("SelSQ").ClearContents
            Range("SelWG").ClearContents
            Range("SelYS").ClearContents
            Range("SelEmployee").ClearContents
        Case Range("SelWG").Address
            Set rngCrit = wksCrit.Range("CriteriaWG")
            Range("SelSQ").ClearContents
            Range("SelMKS").ClearContents
            Range("SelYS").ClearContents
            Range("SelEmployee").ClearContents
        Case Range("SelYS").Address
            Set rngCrit = wksCrit.Range("CriteriaYS")
            Range("SelSQ").ClearContents
            Range("SelMKS").ClearContents
            Range("SelWG").ClearContents
            Range("SelEmployee").ClearContents
        Case Range("SelEmployee").Address
            Set rngCrit = wksCrit.Range("CriteriaEmployee")
            Range("SelSQ").ClearContents
            Range("SelMKS").ClearContents
            Range("SelWG").ClearContents
            Range("SelYS").ClearContents
    End Select
 
    If Not rngCrit Is Nothing Then
        rngCrit.Cells(2, 1).Value = Target.Value
        wksProjects.Range("ProjectsList").AdvancedFilter _
            Action:=xlFilterCopy, _
            CriteriaRange:=rngCrit, _
            CopyToRange:=Range("ExtractProjects"), _
            Unique:=False
    End If
 
exitHandler:
    Application.EnableEvents = True
    Exit Sub
errHandler:
    Resume exitHandler
End Sub

代码前段的Case语句表示,当选择其中一个命名区域时,将查询条件工作表(下文介绍)中对应的查询条件区域赋值给对象变量,将其它命名区域清空。
代码后段表示,将当前区域的值赋给相应的查询条件区域,然后利用该区域的值作为高级筛选的筛选条件,并将筛选后的结果复制到当前工作表指定区域。
#4高级筛选。利用高级筛选获取所需要的数据)
设计查询条件工作表
每一个用于筛选的条件,都存放在“查询条件”工作表中。
projectmanagementsimple4
这样,在“工作查询”工作表中选择相应的条件后,“查询条件”工作表中相应的值得到更新,并在高级筛选中应用。
“查询条件”工作表中命名的区域为:

CriteriaSQ=查询条件!$B$1:$B$2
CriteriaMKS=查询条件!$D$1:$D$2
CriteriaWG=查询条件!$F$1:$F$2
CriteriaYS=查询条件!$H$1:$H$2
CriteriaEmployee=查询条件!$J$1:$J$2

人员列表
在“人员列表”工作表中,使用数据透视表功能从工程清单中获取人员名单,并在筛选条件中使用。
projectmanagementsimple5
在该工作表中,定义了动态名称用于获取最新的人员列表:

EmployeeList=OFFSET(人员列表!$B$3,1,0,COUNTA(人员列表!$B:$B)-COUNTA(人员列表!$B$1:$B$3),1)

同时,当工作簿刚打开时,以及切换“工程清单”工作表时,更新数据透视表,以获取最新的数据:

Private Sub Workbook_Open()
    Dim pt As PivotTable
    For Each pt In wksLists.PivotTables
        pt.RefreshTable
    Next pt
End Sub
 
Private Sub Worksheet_Deactivate()
    Dim pt As PivotTable
    For Each pt In wksLists.PivotTables
        pt.RefreshTable
    Next pt
End Sub

#5数据透视表。使用数据透视表可以容易地获得所需要的数据)
完整的示例
“工程清单”工作表用于输入数据,“工作查询”工作表用于查询,以便了解工作实施进展情况。“查询条件”和“人员列表”工作表不需要做任何操作。

示例下载

应用演示

注:本示例的灵感来源于http://blog.contextures.com中的文章《Create a Movie Collection Database in Excel》。

相关文章