对于来自多个工作表的非标准化数据源,其数据无法直接使用,而是需要先使用Excel中数据处理的得力干将Power Query,将数据源进行清洗、转换、整合成“投入”查询。
1. 通过引用创建新查询
我们之前已经对Power Query数据源的工作表进行了筛选,创建了“Worksheet筛选”查询。现在我们就在此查询的基础上,创建“投入”查询。
2. Power Query删除表的前几行
在Data列的Table中,前几行并不是投入的记录,所以现将其删除。添加自定义列如下。
点击“自定义”列的任何单元格,在下方的预览窗口可以看到Table的前3行被删掉了。
3. 将第一行用作标题
为了方便,我们可以直接在上一步的编辑栏公式的基础上修改,将编辑栏公式改为:
,= Table.AddColumn(源, "自定义", each Table.PromoteHeaders(Table.RemoveRows([Data],0,3)))
4. 保留前几列数据
为了方便,我们可以继续在上一步的编辑栏公式的基础上修改,将编辑栏公式改为:
= Table.AddColumn(Source, "Custom", each Table.SelectColumns(Table.PromoteHeaders(Table.RemoveFirstN([Data],3)),{"成品类型","料号","品名","日期","工号","姓名","投入工时_H"}))
5. 删除不需要的列(Data).
6. 展开数据
点击最后一列列标题右边的标志,不要勾选“使用原始列名作为前缀”,确定。
7. 更改数据类型
依次点击每列标题左边的数据类型标签,选择正确的数据类型。
这样,投入工时的查询就创建好啦!关闭并上载即可,可以仅创建连接。待下一步使用。