【问题标题】:How to combine SUMPRODUCT with an INDEX and MATCH formula?如何将 SUMPRODUCT 与 INDEX 和 MATCH 公式结合使用?
【发布时间】:2021-04-03 04:20:42
【问题描述】:

注意,我已经编辑了我的原始问题以澄清我的问题:

正如标题所示,我正在寻找一种将 SUMPRODUCT 功能与 INDEX 和 MATCH 公式相结合的方法,但如果存在更好的方法来帮助解决以下问题,我也愿意接受。

在下面的示例中,假设表格位于不同的工作表上。我有一个报告,其中在行中包含每个 ID 的销售额,在列中包含每个月的销售额(第一个表)。不幸的是,该报告只有 ID 而不是它们所属的区域,但我确实有一个查找表,其中将每个 ID 标记为各自的区域(第二个表):

A B C D
1 ID January February March
2 1 10 5 20
3 3 5 5 10
4 7 0 10 5
5 14 10 25 5
6 25 5 10 10
7 27 10 10 10
8 44 5 5 5
A B
1 ID Region
2 1 East
3 3 East
4 7 Central
5 14 Central
6 25 Central
7 27 West
8 44 West

我的目标是能够根据以下结果按地区汇总销售额。但是,我只想显示属于单元格 D2 中显示的月份的销售数据。

目标:

A B C D
1 Region Sales February
2 East 10
3 Central 45
4 West 15

我使用 INDEX 和 MATCH 组合返回单个值,但不确定如何使用它返回多个值并同时聚合它们。任何见解将不胜感激!

【问题讨论】:

    标签: excel excel-formula excel-2016


    【解决方案1】:

    另一个使用 SUMIF+INDEX+MATCH 函数的选项

    在“Sheet2”B2,复制下来:

    =SUMIF(Sheet1!H:H,A2,INDEX(Sheet1!B$1:D$1,MATCH(D$2,Sheet1!B$1:D$1,0)))
    

    【讨论】:

    • 您的解决方案有效,但我刚刚意识到我过度简化了我的示例。 ID/区域查找表实际上存在于另一张纸上。我已经修复了表格以反映这一点。希望你能再看看。谢谢!
    【解决方案2】:

    你可以使用:

    =SUMPRODUCT((Sheet1!B$1:D$1=D$1)*(Sheet1!H$2:H$8=A2),Sheet1!B2:D8)
    

    请记住,SUMPRODUCT() 可能会非常繁重地处理大量数据,因此将INDEX()MATCH() 结合起来并不是一个坏主意,但让我们反过来做,将后两者嵌套到SUMPRODUCT() 中=):

    =SUMPRODUCT(INDEX(Sheet1!B$2:D$8,0,MATCH(D$2,Sheet1!B$1:D$1,0))*(Sheet1!H$2:H$8=A2))
    

    【讨论】:

    • 您好,感谢您的解决方案。我意识到我可能在示例中过度简化了我的问题。查找表实际上存在于另一张纸上,我相信您还需要在其中引用 ID 和区域。我已经编辑了表格。希望你有时间再看看。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多