【问题标题】:How to add a weighted average in my pivot table?如何在我的数据透视表中添加加权平均值?
【发布时间】:2017-06-21 23:01:42
【问题描述】:

我想知道如何在我的数据透视表中添加加权平均值。其实我需要做如下计算:SUM(col1 * col2)/SUM(col2).

我尝试通过使用计算字段选项来做到这一点,但是当我输入我的公式时,我只得到以下结果作为输出:SUM((col1 * col2)/col2) 等于 SUM(col1)

【问题讨论】:

    标签: excel pivot-table


    【解决方案1】:

    您将需要 1 计算字段和 1 辅助列

    辅助栏

    col3=col1*col2
    

    计算字段:

    CF=Col3/Col1
    

    如果您尝试将帮助列作为计算字段,它会将col1col2 相加,然后将它们相乘,从而导致无意义的答案

    【讨论】:

    • 感谢您的帮助。但是我真的不知道什么是辅助列。它是数据透视表的 excel 功能吗?如果不是,这意味着我需要在我的 sql 查询中计算我的帮助列(这不是问题)。我的数据透视表基于 SQL 查询。
    • 刚刚在我的 sql 查询中添加了一个帮助列,然后我就按照你说的做了。它就像一个魅力!谢谢大家!
    【解决方案2】:

    鉴于您正在使用加权平均值的 Excel 数据透视表版本,我认为您可能会发现这篇文章很有用: http://excelribbon.tips.net/T007129_Weighted_Averages_in_a_PivotTable.html

    它唯一没有提到的是如果您的权重总和为零(在这种情况下您将除以零)该怎么办。为了避免这种丑陋,您可以使用数据透视表的 DisplayErrorString 和 ErrorString 属性,例如

    oPivot.DisplayErrorString = True
    oPivot.ErrorString = "--"
    

    虽然很明显这可能会在数据透视表的其他地方隐藏真正的错误。

    【讨论】:

      【解决方案3】:

      尝试使用

      =SUMPRODUCT(A1:A6, B1:B6)/SUM(B1:B6)
      

      这篇文章可能对你有所帮助:Calculate Weighted Average in ExcelTed French

      【讨论】:

      • 首先感谢您尝试帮助我。我知道如何计算加权平均值,但我想将它包含在我的数据透视表中,以便根据我的数据分组方式自动生成该平均值。例如,2011年所有数据的加权平均值或买方名称为“toto”的所有数据的加权平均值。
      猜你喜欢
      • 1970-01-01
      • 2019-10-05
      • 2021-03-21
      • 1970-01-01
      • 1970-01-01
      • 2019-12-30
      • 1970-01-01
      • 1970-01-01
      • 2019-10-12
      相关资源
      最近更新 更多