千万不要用一维数组和二维数组的概念来理解什么是一维和二维表。表格是一维还是二维并非以数据表格行列数量为标准,而是以数据表格列标题的属性来判断。 当数据表格的列标题没有相同类别时,称之为一维表。譬如下图中的数据表格。 反之,当数据表格的列标题有相同类别时,即同一类别有多列数据,称之为二维表。下图就是一个二维数据表格,表格的列标题“1月”、“2月”和“3月”是相同类别。 二维表类似于汇总表,更利于观察和比较数据,因此,数据报告和数据分析等通常都使用二维表;而一维表类似于明细表,更符合Excel数据透视表的数据源格式要求,因此,为了更好地应用数据透视表的功能,常常需要将二维表的数据源转换为一维表形式。 1、利用数据透视表转换 首先,用快捷键ALT+D+P打开“数据透视表和数据透视图向导”,生成一个数据透视表。 步骤1:选择“多重合并计算数据区域”和“数据透视表”单选框。 步骤2a:选择“创建单页字段”单选框。 步骤2b:在“选定区域”处选择二维表单元格区域,然后点击“添加”按钮,将区域地址添加至“所有区域”列表框。如果有多个分散的需要转换的二维表,重复“添加”操作,直至所有地址添加至“所有区域”列表框。 步骤3:选择“新建工作表”。如果选择“现有工作表”,需要指定起始单元格地址。 三个步骤完成之后,点击“完成”按钮生成透视表。 然后将光标移至右下角的总计处,即单元格E24,鼠标双击即生成一张一维表。 最后,删除D列,修改表头和格式即可。 2、利用数据透视表和“分列”功能转换 用数据透视表转换二维表和一维表有一个限制,它只能识别二维表中的第一列为行标签,其余列都视作列标签,并参于值的计算,非数字性的数据在计算过程中将丢失。因此,如果二维表有多列行标签时就无法正确转换。 可以利用辅助列和“分列”功能解决这个问题。 首先在二维表数据源中创建一个辅助列,键入公式“=A1&","&B1”,用连接符“&”将所有需要放置在行标签的数据项合并起来并用逗号分隔。 然后按照前面介绍的方法生成一个数据透视表,但注意在步骤2b处选择区域时不要选择A列和B列,仅从辅助列C列开始选择。 点击“完成”按钮,生成的数据透视表如下。 双击数据透视表右下角汇总单元格E62,生成一张一维表。 接下来用“分列”功能分割之前合并到一列的行标签。 首先在“行”之后插入一列,然后光标选中A列需要分列的单元格区域,点击“数据”选项卡,点击“分列”按钮,弹出“文本分列向导”对话框。 步骤1:选择“分隔符号”。 步骤2:勾选“逗号”复选框。 步骤3:目标区域保持默认的“A2”,即合并数据分成不同列之后的起始单元格。 点击“完成”按钮,合并的行标签即按照要求分成不同列。 最后,删除E列,修改表头和格式即可。 以后,整理数据透视表的数据源,碰到二维表时,再也不用手工搬运海量数据了。 |
|