如何解决是否可以在Power Query中将表的一部分附加到同一表的底部?
我有一个结构如下的表:
Year | Month | Item 1 | Type 1 | Value 1 | Cost 1 | Item 2 | Type 2 | Value 2 | Cost 2 |
2020 | Aug | A | AX | Value A | Cost A | B | BY | Value B | Cost B |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
我想更改此表,使其看起来像这样:
Year | Month | Item | Type | Value | Cost
2020 | Aug | A | AX | Value A | Cost A
2020 | Aug | B | BY | Value B | Cost B
etc...
因为它有很多行,并且我有多个这样的表,所以我想在Power Query中进行操作,但是我还没有做到这一点。所以我问这里是否有人知道它是否可能或如何做。
我尝试取消“年”和“月”之后的列,然后稍后对其进行透视,但是最终我得到了很多空值。
这是我设法做到的:
感谢您的帮助,对不起的英语感到抱歉。
解决方法
假设源数据在表1 中,并且指定了列和列标题名称(年,月,... )
,这应该可以工作基本上...
取消枢纽
添加索引
对索引使用数学以4(重复列的数量)计数
按月份和年份分组,以及新的修改索引
展开
let Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],UnpivotIt = Table.UnpivotOtherColumns(Source,{"Year","Month"},"Attribute","Value"),RemoveAttribute = Table.RemoveColumns(UnpivotIt,{"Attribute"}),AddIndex = Table.AddIndexColumn(RemoveAttribute,"Index",1),// we have 4 columns of repeating data,so use 4 in row below
Divide = Table.TransformColumns(AddIndex,{{"Index",each Number.IntegerDivide(_,4),Int64.Type}}),Grouping = Table.Group(Divide,{"Index","Year",{{"Values",each Record.FromList([Value],{"Item","Type","Value","Cost"}),type record}}),RemoveIndex = Table.RemoveColumns(Grouping,{"Index"}),#"Expanded Values" = Table.ExpandRecordColumn(RemoveIndex,"Values","Cost"},"Cost"})
in #"Expanded Values"
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。