王志军
最近在工作中遇到一个比较头痛的问题,如图1所示,虽然这只是一个实际表格的部分数据,但B列的负责人信息都挤在一个单元格内,现在需要将这个单元格的数据拆分到不同列,也就是说分拆为姓名、电话、性别等三列,该如何操作呢?
虽然手工拆分也可以实现上述需求,但实际的数据源非常大,而且需要时常更新,最好考虑更好的方法。这里我们借助Power Query编辑器完成这一任务,这里以Excel 365版本为例进行介绍。
第1步:创建表
单击数据区域任意单元格,切换到“数据”选项卡,在“获取和转换数据”功能组选择“自表格/区域”,此时会打开“创建表”对话框,如果表数据的来源没有问题,直接点击“确定”按钮关闭对话框。
第2步:按换行符拆分
此时会打开Power Query编辑器,单击“负责人信息”字段标题,在“转换”功能组依次选择“拆分列→按分隔符”,此时会打开“按分隔符拆分列”窗口,首先请清除默认的分隔符号,展开“高级选项”,选择“拆分为行”,接下来在“引导字符”下拉列表框选择“换行符”,此时可以看到分隔符的内容已经被自动更换,确认之后可以看到图2所示的效果。
第3步:
保持“负责人信息”字段的选中状态,继续选择“拆分列→按分隔符”,保留默认选项,直接点击“确定”按钮。单击“负责人信息.1”字段标题,切换到“转换”选项卡,在“任意列”功能组选择“透视列”,此时会打开“透视列”对话框,“值列”选择刚刚拆分出的“负责人信息.2”字段。单击并展开“高级选项”,聚合值函数选择“不要聚合”,确认之后可以看到图3所示的效果。
完成上述操作之后,返回“開始”选项卡,选择“关闭并上载”按钮就可以了。使用这个方法的好处是,如果数据源中增加或减少了数据,只要切换到“数据”选项卡选择“全部刷新”,就可以获得最新的拆分结果,不需要进行其他的任何操作。