同事拿着桌子来求助(如图1)。这里的源数据是一个课程表,以一维形式显示班级数量和教师姓名,类似于一个日常账户。考虑到打印和张贴课程表的要求,同事想将其转换成二维表格,即表格像普通课程一样按照周数和课时数显示。由于实际数据量大,手动转换显然比较麻烦。类似于日常账户样式的数据表如何转换成实用的样式表?
在Excel2016中,切换到“数据”选项卡,在“获取和转换”功能组依次选择“新建查询→从文件→从工作簿”,随后会打开“导入数据”对话框,选择需要转换的工作簿,在这里选择包含数据的一维工作表,本例为Sheet1,选择之后会看到图2所示的预览效果,点击右下角的“编辑”按钮导入数据。
数据导入之后,我们会看到全新界面的查询编辑器,切换到“转换”选项卡,单击“任意列”功能组的“透视列”按钮,打开“透视列”对话框,将值列更改为“Column3”,也就是教师姓名所在的列,点击“高级选项”前面的三角按钮,将“聚合值函数”由默认的“计数(全部)”更改为“不要聚合”,如图3所示。检查无误之后点击右下角的“确定”按钮关闭对话框。
完成上述操作之后,我们就可以看到图4所示的二维课程表。切换到“开始”选项卡,删除这里的“null”列和行即可获得最终效果(如图5)。检查无误后,单击“关闭”功能组的“关闭并上载”按钮,此时会在Excel自动新建一个二维格式的工作表。
小提示:
如果使用的不是Excel 2016版本,可以使用数据透视表的功能实现,但要借助DAX计算字段公式。上述案例讲述的是教师课程表的转换,如果你从事的是其他行业,类似的表格转换思路相同,聪明的你只需替换其中的具体字段套用即可。