如果你是财务人,也许会遇到下面的问题:左侧是发票号,但是连写了,例如,103059612-18就代表103059612、103059613、103059614、103059615、103059616、103059617、103059618这7个号码,现在要将这样的写在一起的发票号,整理成保存在每个单元格的发票号。

这个问题怎么快速解决?一个一个挖数?也是可以的,先输入103059612,往下拉序列,拉到103059618位置,再拉第2个发票号,再拉第3个,就这样一直的拉,把自己拉的没脾气了。
其实,这样的问题,对于Power Query来说,根本就不是事,下面是这个问题的解决方法和步骤。
建立查询:

执行添加列--提取--首字符 命令,提取发票号词根(假如是左边的7位数):


就得到一个新列,如下图:

继续执行提取命令,分别从发票号中提取开始数字(第8位开始,2位数字,不过要注意,在PQ中,第一位数字的序号是0,因此设置的开始位置应该输入7,而不是8),和结束数字(最右侧的2位数字):



修改标题为确切的名字:

分别选择词根和开始数字、词根和结束数字,合并成两列新的数字,也就是发票的开始号码和结束号码,并将数据类型设置为整数:



保留第一列和最后两列,其他列删除掉:

执行“自定义列”命令,添加一个自定义列,公式为:
={[开始号码]..[结束号码]}

就得到了下面的自定义列,这个列的数据为“List”,也就是说,这个结果并不是一个数,而是一个列表。

单击自定义列标题右侧的展开按钮,弹开一个下拉菜单,选择“扩展到新行”命令,如下图所示。

就得到了展开的发票号,如下图:

删除掉中间的两列,把自定义列数据类型设置为文本,并修改字段名称为“详细号码”:

最后,将数据导出到Excel工作表:

你是不是觉得不可思议?
-------------------------------
系列讲座文章目录:

