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

下面,请find一个截图,为我的问题提供一些上下文。

在这里输入图像说明

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

我的问题与上述是双重的。 首先,据我所知,生成报告的应用程序在任何地方都使用不间断的空格。 如此简单的MATCH语句,如“不是蓝色”,通常会返回N / A,因为我正在使用“非”和“蓝色”之间的“正常”空间进行search。 另一个问题是,我不知道如何使用前三列中的条件来完成SUMIFS(例如,将所有数据1值(其中我具有Level 1 / Blue / Green作为我的标准)。 第1和第2列中的单元格以合并单元格的forms出现,我必须手动取消合并,然后复制相应的单元格值。 这将是痛苦的。

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

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

要根据显示“不是蓝色”的合并单元格列( B2:B9 )合并数据1( D2:D9 ),并用空格replace非空白空格,可以尝试以下操作:

=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

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) 

我无法弄清楚的是,为什么当我使用原始公式时,最初只能获得顶级合并单元格值。 我确定这是因为我错误地调换了某些东西。 但无论如何,非常感谢你的帮助。