![从原始数据到分析报告:Excel数据透视表高效达人养成记](https://wfqqreader-1252317822.image.myqcloud.com/cover/573/31729573/b_31729573.jpg)
1.1 不规范表格结构的重新搭建
所谓不规范表格结构,就是表格结构不满足数据库要求,比如二维表格,带合并单元格的多行标题,不同类型的数据保存在了同一列,等等。下面我们结合实际工作中经常遇到的几个问题,介绍表格结构重新搭建的实用技能和技巧。
1.1.1 把多行标题的数据区域转换为数据清单
具有合并单元格的多行标题的数据表格,是很多人喜欢设计的一种表格结构,实际上,这样的表格是报告的结构,而不是标准数据库的结构,所以无法使用透视表来汇总分析数据。
案例1-1
图1-1是一个具有合并单元格的多行标题的数据表格,这个表格在分析数据方面非常不方便,除非使用函数做固定格式的分析报告。如果想使用透视表来进行各角度、多维度的分析,则需要把这个表格转换成图如1-2所示的数据清单。
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00021001.jpg?sign=1738760915-iCZFcuw0LXKHrGmC2qCaSXKwSD53EF9l-0-a77f5126e55ef69e3b4e8704e1917ecb)
图1-1 带合并单元格的多行标题的表格
下面介绍这种类型表格的转换方法。
01 首先设计如图1-3所示的表格结构。
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00022001.jpg?sign=1738760915-JrTXbqmvwgIw7opc37DRt3l55axygbHw-0-5a359ed0160df2a117731868399399de)
图1-2 标准的数据清单
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00022002.jpg?sign=1738760915-zmhxLiqgsoYJflL3SKb6nMLIpYaKrKsM-0-ce458b7e98ec79da925e9a6861710e83)
图1-3 设计标准数据清单结构
如果产品个数不多,可以使用手工的方法在A列和B列分别输入产品名称和月份名称。
但如果产品很多,比如有产品100个,每个产品所用月份数为12个,那么需要设计100*12=1200行数据,这样的工作量是比较大的,也是很烦琐的。我们可以使用下面的方法快速构建A列产品名称和B列月份名称数据列。
(1)先设计一个二维表格,A列是产品名称,第1行是月份名称,然后在单元格都输入数字1,如图1-4所示。
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00022003.jpg?sign=1738760915-W8g0xFvo79Dg70WDujPWx5YcNHVOEMCe-0-ff03ef3a2a7f605b4e2f91206f84d09c)
图1-4 设计辅助区域
(2)按“Alt+D+P”组合键,打开“数据透视表和数据透视图向导—步骤1(共2步)”对话框,选择“多重合并计算数据区域”选项按钮,如图1-5所示。
(3)单击两次“下一步”按钮,打开“数据透视表和数据透视图向导—步骤2b(共3步)”对话框,选择辅助数据区域,单击“添加”按钮,如图1-6所示。
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00023001.jpg?sign=1738760915-9xU4uV8PxNcAy8gQnYXPlGQTOXtFtyTx-0-fb376052c56162282a58586d8f96458d)
图1-5 按“Alt+D+P”组合键,打开“数据透视表和数据透视图向导”对话框
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00023002.jpg?sign=1738760915-WwAJMiU34dCb3a2wlW8G8g16rjjosRju-0-4484cb1a3b0197ec3d5d279af5ca1b6c)
图1-6 选择添加区域
(4)单击下一步,打开“数据透视表和数据透视图向导—步骤3(共3步)”对话框,选择“新工作表”选项按钮,如图1-7所示。
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00023003.jpg?sign=1738760915-50DH3YFoUAOL6D8raSzCqmQqWj4oOUIG-0-34fca5dd9c15ee50739b4f0466b27dd6)
图1-7 选择透视表显示位置
(5)单击“完成”,就得到一个基本的透视表,如图1-8所示。
(6)双击透视表最右下角的单元格,也就是两个“总计”交叉单元格(此案例是数值216的单元格),就得到一个明细表,如图1-9所示。
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00023004.jpg?sign=1738760915-roIPyePI6cXWLOuGXnf9QSG7zbG76dZA-0-27baa0bb1afca910c929e5b9477591fd)
图1-8 制作的基本透视表
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00023005.jpg?sign=1738760915-uTi533L1QSLmCA0HpdPndgfQjuoEAxKv-0-9457cc807483e350f5db603b0a0f7c74)
图1-9 得到的明细表
(7)删除C列和D列,然后把A列和B列的数据复制到一个新工作表中,就得到产品名称以及月份名称列表(参阅图1-3)。
(8)最后删除无用的附表工作表。
02 在如图1-3所示的单元格C2输入下面的公式,然后往右往下复制,即得到一个规范的数据清单(参阅图1-2):
=INDEX('2015年销售汇总'!$B$3:$AK$20,MATCH($A2,'2015年销售汇总'!$A$3:$A$20,0),MATCH($B2,'2015年销售汇总'!$B$1:$AK$1,0)+COLUMN(A1)-1)
1.1.2 将二维表格转换为数据清单
所谓二维表格,就是表格只有一行标题和一列标题,这样结构的表格实际上是简单的汇总表结构,但是很多人把它当成了基础表格。反过来,如果手头是这样的表格,现在要使用透视表进行各个角度的多维度分析,又该如何把这个二维表格还原成数据清单呢?
案例1-2
有人可能要问了:干吗辛辛苦苦地把这样的二维表进行转换啊?这样不是挺好的吗?
比如下面图1-10所示的二维表,是各个部门各项费用的汇总表,很直观也很清楚。但是,如果要分析各个部门的各项费用的占比,或者某项费用的各个部门的占比,是不是要设计表格,创建计算公式,很不方便?比如要制作两层分类结构的报表(外层是部门,内层是费用;或者外层是费用,内层是部门),是不是觉得很难?
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00024001.jpg?sign=1738760915-8Q2eZ9Y6pGjRRN8Txe7gOeWiEzGmDmke-0-0e2d4b881d1d1f3673368a7b38205fcd)
图1-10 典型的二维数据表
如果把这个表格转换成如图1-11所示的清单型表格,就可以创建透视表灵活分析数据了。图1-12就是利用透视表分析的结果(透视表+图表,更加清晰)。
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00024002.jpg?sign=1738760915-XQ7FSAH7OHFnGUHLtVGIUspOdTaGw8GT-0-3884b56327a43bd2d103c53244c7b47c)
图1-11 清单型数据表
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00024003.jpg?sign=1738760915-CacqRTmcFgSM8v5Utst5khrNqynbQMux-0-d409d8dabeb1c7fb7f9ba77b8001d2b1)
图1-12 利用透视表灵活分析部门费用
下面介绍如何把二维表格转换为数据清单。主要步骤如下。
01 按“Alt+D+P”组合键,打开“数据透视表和数据透视图向导—步骤1(共3步)”对话框,选择“多重合并计算数据区域”选项按钮,如图1-13所示。
02 单击两次“下一步”按钮,打开“数据透视表和数据透视图向导——步骤2b(共3步)”对话框,选择辅助数据区域,单击“添加”按钮,如图1-14所示。
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00025001.jpg?sign=1738760915-KCN7qNYaNuuWdSXv4BO2AAEA7fnuPU5O-0-0700cadad3550a654491c83fa9ecf61c)
图1-13 按“Alt+D+P”组合键,打开“数据透视表和数据透视图向导”对话框
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00025002.jpg?sign=1738760915-0G7BIgjQqhz2tKPQiPePHedA9PfCbhbm-0-9d002adcfa3e0705c732f437a6ca1aaa)
图1-14 选择添加区域
03 单击下一步,打开“数据透视表和数据透视图向导—步骤3(共3步)”对话框,选择“新建工作表”选项按钮(参阅图1-7)。
04 单击“完成”,就得到一个基本的透视表,如图1-15所示。
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00025003.jpg?sign=1738760915-GY335rqCUXfxMw3mZONiOIRwSmToE2BB-0-d342cf83c3721369d8d891343d999686)
图1-15 制作的基本透视表
05 双击透视表最右下角的单元格,也就是两个“总计”交叉单元格(此案例是数值840097单元格,也就是单元格K14),就得到一个明细表,如图1-16所示。
06 在表格的“设计”选项卡中,从“表格样式”中单击“清除”按钮,清除表格格式,如图1-17所示;并在“工具”中单击“转换为区域”,如图1-18所示。这样就把得到的表格转换为普通数据区域。
07 最后修改表格标题,得到需要的数据清单。
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00025004.jpg?sign=1738760915-N19ZWZ6fMpEUHfO1fP053RluGQWugX94-0-c382236dc45b5616d98eb474675c47a9)
图1-16 得到的明细表
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00026001.jpg?sign=1738760915-fMvaS62MINBGo0oLpusQMXl5Xv7If60b-0-024be2c2dabf130c5ceecc8420957049)
图1-17 清除表格样式
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00026002.jpg?sign=1738760915-wCFtzUfwdHC2DTdCjoc1B9AyGj9EOYpR-0-e57f58ded119490e39e713f803a75a8a)
图1-18 转换为普通数据区域
1.1.3 将多列文字描述转换为一个列表清单
有时候,我们也会遇到这样的表格:有很多列,每列是一个部门下员工姓名列表,现在要做成一个员工名单清单,以便于输入其他数据,并进行分析。
案例1-3
图1-19就是这样的一个表格,现在要求转换为右侧所示的名单清单。主要步骤如下。
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00026003.jpg?sign=1738760915-Gxta7b8fWRTfR2PNV6QTluPRvPxdQq2x-0-704409f3f1e96e59f829881806c6b864)
图1-19 原始数据及要求的结果
01 首先在原始数据区域左侧插入一个辅助列,输入标题和任意的数据,如图1-20所示。
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00027001.jpg?sign=1738760915-TCL9WGbN1rsQ06t7kWGVSFcl717wTgdF-0-804cbb5b5357766157ca5cb355bf7b04)
图1-20 在原始数据左侧插入辅助列
02 按“Alt+D+P”组合键,制作包含辅助列在内的数据区域的多重合并计算数据区域透视表,详细步骤前面两个例子都有介绍,此处不再赘述。就得到基本的数据透视表,如图1-21所示。
03 双击透视表最右下角的两个“总计”交叉单元格,就得到一个明细表,如图1-22所示。
04 删除A列和D列,把表格样式清除,并把表格转换为区域,修改标题。
05 注意此时的姓名列有空格,然后再选择B列,删除B列所有空单元格的行,最后就得到需要的结果。
如何批量删除空单元格所在的行,我们将在后面相关的例子中进行介绍。
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00027002.jpg?sign=1738760915-IE6FuH1yNJAVAlxNfV4wvfkgcox99exA-0-fda2b823c3186bbf601fbb47162fca66)
图1-21 制作的基本透视表
![](https://epubservercos.yuewen.com/48D17B/17180251604499706/epubprivate/OEBPS/Images/img00027003.jpg?sign=1738760915-JP3Cf7o2mGTurC6INNM5ylIXvX0LbEKk-0-82b17f5bd2003e774d21609eec6fa5d0)
图1-22 得到的明细表