Excel Powerpivot从表2的数据范围中检索基数值,以作为列添加到表1中
使用Excel 365 Powerquery 我有两个数据源Excel Powerpivot从表2的数据范围中检索基数值,以作为列添加到表1中,excel,powerquery,Excel,Powerquery,使用Excel 365 Powerquery 我有两个数据源table1和table2,其中包含以下条目: table1: ID | salary =========== 1 | 10 2 | 1000 table2: ID | inclminval | exclmaxval | class | display 20 | 0 | 100 | P1 | Poor man 30 | 100 | 9999 | P9
table1
和table2
,其中包含以下条目:
table1:
ID | salary
===========
1 | 10
2 | 1000
table2:
ID | inclminval | exclmaxval | class | display
20 | 0 | 100 | P1 | Poor man
30 | 100 | 9999 | P9 | Wealthy
我想在表1后面加上:对于每一个条目,表1.1工资
- 将其与表2的范围进行比较。在表2上,添加列。。。自定义列。。。使用列名自定义和公式=1
一个表1,添加列。。。自定义列。。。使用列名自定义和公式=1
家。。合并查询
使用完全外部联接选择并匹配两个表中的自定义列
使用新列顶部的箭头[x]展开inclminval、exclmaxcal、class和显示列
添加列。。。公式类似于的自定义列
= if [salary]>=[inclminval] and [salary]<[exclmaxcal] then "keep" else "remove"
=如果[salary]>=[inclminval]和[salary]=[inclminval]和[salary],您能否向我们展示所需的输出?你也有一些你尝试过的代码吗?我想我理解你在做什么。展开表2,将最小值和最大值之间的所有可能值添加到与表1的“薪资”内部联接的其他列中。现在工资当然可以是分数的,所以这个解决方案不起作用?编辑以处理分数为什么不只是交叉联接
为什么不呢。很好的呼唤。谢谢AddCustom=Table.AddColumn(源代码,“Custom”,每个表2)
let Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content], #"Added Custom" = Table.AddColumn(Source, "Custom", each 1), #"Merged Queries" = Table.NestedJoin(#"Added Custom",{"Custom"},Table2,{"Custom"},"Table2",JoinKind.FullOuter), #"Expanded Table2" = Table.ExpandTableColumn(#"Merged Queries", "Table2", {"inclminval", "exclmaxcal", "class", "display"}, {"inclminval", "exclmaxcal", "class", "display"}), #"Added Custom1" = Table.AddColumn(#"Expanded Table2", "Custom.1", each if [salary]>=[inclminval] and [salary]<[exclmaxcal] then "keep" else "remove"), #"Filtered Rows" = Table.SelectRows(#"Added Custom1", each ([Custom.1] = "keep")), #"Removed Columns" = Table.RemoveColumns(#"Filtered Rows",{"Custom", "inclminval", "exclmaxcal", "display", "Custom.1"}) in #"Removed Columns"