通过引用另一个表中的%份额来丰富Excel数据/行

时间:2016-12-23 01:45:04

标签: excel vba

在Excel中,通过应用表B中的%份额来生成表C中的所需输出,什么VBA代码将帮助我爆炸/丰富表A中的数据?并非所有公司都需要充实。

Excel中相关表格的屏幕截图

screenshot of relevant tables in Excel

我设想了一些匹配公司名称的循环,然后通过插入必要的行来显示由团队产生的共享$来丰富表B.

1 个答案:

答案 0 :(得分:0)

我为此使用Power Query,而不是VBA。将表A和表B加载到Power Query中。然后使用完全外部联接创建一个合并公司列上的两个表的查询。然后提取团队并共享列。创建一个用于计算$ value的新列,删除不需要的列并从Team列中删除空值。结果如下:

enter image description here

通过单击Power Query Editor中的按钮并手动输入一个IF语句生成的M代码如下所示:

let
    Source = Table.NestedJoin(TableA,{"company"},TableB,{"company"},"NewColumn",JoinKind.FullOuter),
    #"Expanded NewColumn" = Table.ExpandTableColumn(Source, "NewColumn", {"Team", "PercShare"}, {"Team", "PercShare"}),
    #"Added Custom" = Table.AddColumn(#"Expanded NewColumn", "Dollars", each if [Team] = null then [dollar] else [dollar] *([PercShare]/100)),
    #"Removed Columns" = Table.RemoveColumns(#"Added Custom",{"PercShare"}),
    #"Replaced Value" = Table.ReplaceValue(#"Removed Columns",null,"",Replacer.ReplaceValue,{"Team"})
in
    #"Replaced Value"