Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 如何将多个度量值添加到数据透视表中?_Excel_Pivot Table_Powerpivot - Fatal编程技术网

Excel 如何将多个度量值添加到数据透视表中?

Excel 如何将多个度量值添加到数据透视表中?,excel,pivot-table,powerpivot,Excel,Pivot Table,Powerpivot,我对使用数据透视表和数据模型非常陌生,所以我甚至不知道我想做的事情是否可行。我有一个数据透视表(数据透视表1)和它的来源(表25),我想添加大约一百个在表组合中列出的度量值 例如,我输入了两个橙色的第一个度量值,但它们没有链接到TableCombination,逐个输入它们将相当长。每个度量都针对一个不同的总和wfn列,该列将所有其他行的总和乘以一个系数。TableCombinations表仅说明了每列要使用的系数。对于前三行,以下是我的度量公式: sum wf1=1.4*Table25[Su

我对使用数据透视表和数据模型非常陌生,所以我甚至不知道我想做的事情是否可行。我有一个数据透视表(数据透视表1)和它的来源(表25),我想添加大约一百个在表组合中列出的度量值

例如,我输入了两个橙色的第一个度量值,但它们没有链接到TableCombination,逐个输入它们将相当长。每个度量都针对一个不同的总和wfn列,该列将所有其他行的总和乘以一个系数。TableCombinations表仅说明了每列要使用的系数。对于前三行,以下是我的度量公式:

sum wf1=1.4*Table25[Sum of wD]+0*Table25[Sum of wL]+0*Table25[Sum of wS]+0*Table25[Sum of wW]+0*Table25[Sum of wWSOUL]
sum wf2=1.25*Table25[Sum of wD]+1.5*Table25[Sum of wL]+1*Table25[Sum of wS]+0*Table25[Sum of wW]+0*Table25[Sum of wWSOUL]
sum wf3=1.25*Table25[Sum of wD]+1.5*Table25[Sum of wL]+0*Table25[Sum of wS]+0.4*Table25[Sum of wW]+0*Table25[Sum of wWSOUL]
...
两个问题:

  • 是否有一种链接表的方法,以便对表组合所做的任何更改都会在透视表度量值中更新
  • 是否有一种方法可以生成所有度量值,而无需逐个输入

  • 您当然可以使用VBA添加度量值,并在表更改时更新它们。我可能很快就会用这种方法写出一个答案。但是这里有另一种方法来实现你想要的

    我以前写过一些代码将表从数据透视表,这样数据透视表的维度或位置的任何更改都将反映在阴影表的维度和位置中。这有效地为我们提供了一种向数据透视表中添加计算字段的方法,该字段可以引用该数据透视表之外的内容。如果数据透视表增长,则计算表将增长。如果数据透视表收缩,计算表将收缩,其中的任何冗余公式将被删除

    您可以很容易地使用这种方法在数据透视表旁边的第二个表中执行计算,第二个表中的每个列x都可以很容易地引用“参数”表中的行x


    请参见

    您应该能够使用交叉连接功能,仅使用一个DAX度量来完成此操作

    不要在表之间建立关系,将#拖到数据透视表的列区域。然后创建此度量:

    =SUMx(交叉连接(表1,表2),表1[wD]*表2[wD]+表1[wL]*表2[wL]+表1[wS]*表2[wS]+表1[wW]*表2[wW]+表1[WWSOUR]*表2[WWSOUR])

    这会给你你需要的确切答案

    下面是使用一些示例数据的情况:

    …下面是我使用的示例数据:


    您要寻找的词是-这是第一个问题的提示您的公式有效,但当我将此度量添加到透视表时,我只得到一列。我需要访问所有100个左右的组合(100个左右的列?)。也许我遗漏了什么?你把参数表中的“#”列放在数据透视表的列区域了吗?我错了,我没有把它放在列中。我现在有了正确的外观(多列),但每列都有相同的值。对我来说很好。请参阅我的答案中添加的图片。