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