Excel Power Query:将两个单元格转换为两个重复的行

Excel Power Query: transform two cells into two duplicate rows

我有一个 Excel Power Query,它从本质上是一个时间表 Web 应用程序导入和转换 CSV 数据传输文件,准备再次通过 CSV 导入我们的工资单应用程序。某些行在两个不同的字段中同时具有“白天”和“夜间”时间。我需要将这两个字段转换为两个单独的行,为每个字段添加一个自定义“费率”字段。举例说明:

Name               day hours      night hours
A.N Other               6              4

转换为:

Name               day hours      night hours    hours      rate
A.N Other               6              0           6        rate1
A.N Other               0              4           4        rate2

老实说,我真的不知道从哪里开始。任何帮助都会受到热烈欢迎。

这里的关键步骤是 select 查询编辑器中的 day hoursnight hours 列,然后在 Transform 选项卡下选择 Unpivot Columns

这将产生:

Name                Attribute      Value       
A.N Other           day hours        6
A.N Other          night hours       4        

完成后,您可以使用以下规则创建自定义列:

if [Attribute] = "day hours" then [Value] else 0

与夜间时间栏类似:

if [Attribute] = "night hours" then [Value] else 0

从那里您可以根据需要重新排列、重命名和删除列。

您还可以使用“属性”列或小时列之一创建具有类似逻辑的自定义费率列。