使用所有单元格中不存在的条件的多条件索引/匹配/求和

时间:2014-01-26 16:06:52

标签: excel excel-formula multiple-columns conditional-statements sumifs

下面,请找一个屏幕截图,它将为我的问题提供一些背景信息。

enter image description here

以上是我公司使用的报告工具的输出修改版本。此报告以Excel 2003格式吐出,我将在Excel2010中进行操作。我无法改变输出的格式。

我对上述问题的看法是双重的。首先,据我所知,生成报告的应用程序在任何地方都使用不间断的空格。因此,像“Not Blue”这样简单的MATCH语句通常会返回N / A,因为我正在使用“Not”和“Blue”之间的“正常”空格进行搜索。另一个问题是我无法弄清楚如何使用前三列中的条件来执行SUMIFS(例如,总计所有数据1值,其中我将Level 1 / Blue / Green作为我的标准)。第1列和第2列中的单元格作为合并单元格进入,我必须手动取消合并它们,然后复制相应的单元格值。这将是痛苦的。

我希望有一些办法可以解决这些限制,这样我就可以相对轻松地编写SUMIF公式(或INDEX / MATCH或SUMPRODUCT或任何其他求和/匹配公式),而不是报告吐出的格式,必须主要修改输出格式。我的目标是建立一个标准的计算页面,该页面将针对我公司的应用程序吐出的报告进行查找。为了简化最终用户交互,我希望能够让他们只将应用程序的输出复制/粘贴到我的处理工具中,然后找出我需要的各种总数。

我非常愿意探索VBA以及基于配方的解决方案。

2 个答案:

答案 0 :(得分:1)

根据显示“Not Blue”的合并单元格列(D2:D9)对Data1(B2:B9)求和,并用空格替换不间断空格,可以试试这个:

=SUMPRODUCT((LOOKUP(ROW(B2:B9),ROW(B2:B9)/(B2:B9<>""),TRIM(SUBSTITUTE(B2:B9,CHAR(160)," ")))="Not Blue")*D2:D9)

公式的LOOKUP(.)部分评估为:

{"Blue";"Blue";"Blue";"Not Blue";"Not Blue";"Not Blue";"No Answer";"No Answer;"No Answer"}

通过复制公式的这一部分并更改引用,可以为其他合并单元格列添加其他条件。例如,您可以使用此方法查找条件(级别1,非蓝色,红色)的Data1 + Data2 + Data3:

=SUMPRODUCT((LOOKUP(.)="Level1")*(LOOKUP(.)="Not Blue")*(C2:C9="Red")*D2:F9)

其中(LOOKUP(.)="Not Blue")包含在上面的第一个公式中

(LOOKUP(.)="Level1")相同,但A2:A9代替B2:B9

答案 1 :(得分:0)

lori_m,我修改了你的公式,如下所示,这似乎有效:

=SUMPRODUCT(
--(LOOKUP(ROW($A$7:$A$43),ROW($A$7:$A$43)/($A$7:$A$43<>""),
TRIM(SUBSTITUTE($A$7:$A$43,CHAR(160)," ")))="Level 2"),D$7:D$43)

我无法理解的是,当我使用您的原始公式时,我最初只获得顶级合并单元格值。我确定这是因为我误转了一些东西。但无论如何,非常感谢你的帮助。

相关问题