【问题标题】:Searching for a column based on string, then sumif for multiple criteria in that column (excel 2007)基于字符串搜索列,然后在该列中搜索多个条件(excel 2007)
【发布时间】:2013-11-13 19:44:51
【问题描述】:

我在名为 Program Data 的工作表上有一个大型数据集,它(非常粗略地)如下所示:

  5              12         13             28          32        
Column E .... Column N   Column O ...  Column AB    Column AC ...  

Existing        CCS       Auto           425.25       36.89
New             RCS       Auto            32.65      189.50
Existing        CCS       Auto           100.00       50.00

列名上方的数字很重要,是我查找/引用列的方式,但它们与 A=1、B=2 等无关。我有一个单元格 AK2,它告诉我什么这些列上方的数字是。我需要创建一个公式来查找具有指定编号的列,然后在该特定列上求和。现在我有以下公式:

=SUMIFS(INDEX('Program Data'!A:GA,0,MATCH("*"&Ak2&"*" ,'Program Data'!1:1,0)),

 'Program Data'!$N:$N,"CCS",'Program Data'!$E:$E,"Existing",'Program Data'!O:O,"Auto")

上面是搜索 AK2 中指定的数字,然后将该列中的所有内容相加,即“CCS”、“Existing”和“Auto”(分别为 E、N 和 O 列)。所以对于上表,如果 AK2=28,那么我想要 AB 列中的值,所以公式将返回 525.25。如果 AK2=32,那么我想要 AC 列,因此公式将返回 86.89。

问题是上面的公式在 MATCH 语句中不断得到一个 NA,尽管 AK2 中的文本和数字完全匹配,并且有些值符合 sumif 语句中的条件。我无法弄清楚问题所在。任何建议表示赞赏。

【问题讨论】:

    标签: excel sum match


    【解决方案1】:

    你应该在MATCH函数中去掉通配符,试试吧

    =SUMIFS(INDEX('Program Data'!A:GA,0,MATCH(AK2,'Program Data'!1:1,0)),'Program Data'!$N:$N,"CCS",'Program Data'!$E:$E,"Existing",'Program Data'!O:O,"Auto")

    【讨论】:

    • 天哪,我觉得自己好傻!感谢您对此的关注——我修改了一个旧的、过时的公式,并且不必要地把它延续了下来。感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-16
    • 2016-02-21
    • 2021-09-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多