使用多个条件求和值,并将名称数组作为另一个条件

时间:2018-03-27 14:07:26

标签: arrays excel excel-formula

我正在根据Power Query表(SQL下载)中的多个条件尝试SUM值:

  • 错误类型名称在单元格中进行了硬编码,很简单,已完成,单元格引用 B28 位于以下代码中
  • 记录的
  • 也为单元格引用进行了硬编码,也已完成

  • 记录该人的
  • ID 。我们有四个小组,我为其分配了名称范围(MI_EquitiesM_BondsSSR_EquitiesSSR_Bonds),以及用户ID列表。此列表的长度不同。

以下是我正在使用的公式(没有最后条件):

=(SUM(IF((tblAPP_Main[TypeError]=$B28)*(MONTH(tblAPP_Main[DateOccurence])=MONTH($K$2))*(YEAR(tblAPP_Main[DateOccurence])=YEAR($N$2))=1;1;0)))

此公式有效,直到我在年度条件后添加以下内容:

*SUMPRODUCT((--ISNUMBER(SEARCH(MI_Equities;tblAPP_Main[CreatedBy]))))

从这个公式中我得到#VALUE!错误(对于数组中的值)和其他的#N/A错误。我想我得到了这些错误,因为矩阵的长度与我要比较的列不同,但我不确定。

要在实践中展示:

我们说我有这张桌子(tblAPP_Main): this table

我需要计算在指定范围内指定 je * 的次数(即 je23575 被命名为MI_Equities,所以我想要使用那个名字)。

应该返回数字 1 ,因为该特定团队犯了1个人为错误。

我需要我的决赛桌看起来像这样: this

重要说明: 计算量很大且在VBA中编写脚本。

1 个答案:

答案 0 :(得分:0)

您可以添加名为tblAPP_Main的新列Team_Name,其中您使用if函数和团队名称来填充列。 (基本上将命名范围移动到新列中)

要填充Table_Final,请使用=countifs('tblAPP_Main'!$A:$A= tblAPP_Main$A2, 'tblAPP_Main'!$D:$D= 'tblAPP_Main'!B$1)。 (D列是您刚刚创建的新列。) countifs应填充表格,您可以使用总和函数进行总计。 如果有帮助,请告诉我。