基于另一个工作表中的规则的单元格中文本的总和



我创建了这个工作表来测试这个公式:

|   |    A     |   B  |   C   |  D |  
| 1 | Object   | Yes  | Maybe | No |  
| 2 | Object 1 | 50   | 25    | 0  |  
| 3 | Object 2 | 20   | 10    | 0  |  
| 4 | Object 3 | 20   | 10    | 0  |  
| 5 | Object 4 | 10   | 5     | 0  |  

规则

|   |    A      |    B     |   C      |    D     |    E     |    F    | G |  
| 1 | Article   | Object 1 | Object 2 | Object 3 | Object 4 | Total   |   |  
| 2 | Article 1 | 50       | 20       | 20       | 10       | 100     |   |  
| 3 | Article 2 | Yes      | Yes      | Yes      | Yes      | 100     |   |  
| 4 | Article 3 | Yes      | No       | No       | Yes      | 60      |   |  
| 5 | Article 4 | No       | Yes      | Yes      | No       | 40      |   |  
| 6 | Test      | No       | Yes      | Yes      | No       | #VALUE! |   |  
| 7 | Test2     | Yes      | Yes      | No       | Yes      | 50      |   |  
| 8 | Test3     | Yes      | Yes      | No       | Yes      | 70      | * |
* This works partially, but if No is selected the next Yes won't be calculated and breaks  
if first Object is not Yes. The example says 70 but should be 80. 

https://docs.google.com/spreadsheets/d/1ydSfa4dpkTdcvwPPqGLRdQ9r-JZstB-hYS7J7tondUs/edit?usp=sharing

我想要实现的是,当将 SUM 相加时,Rules!中列出的值应对应于Sheet!中的Yes/No

例如,在 Sheet!,如果我选择Yes, Yes, No, Yes它应该加起来50 + 20 + 0 + 10 = 80.因为前Yes等于50,后跟20, 20, 10,任何No等于0

在电子表格方面,我知道非常基本的公式,到目前为止我尝试过以下内容,这也是我卡住的地方。

我希望它B8读取E8,查看列出了多少Yes,如果列出了任何Yes,请将其与B2B5进行比较。

=SUMIF(B8:E8,"Yes",Rules!B2:B5)

我最接近的是忽略规则表,并通过重复 IF 语句将规则直接放入公式中。这样它就可以工作,但我仍然希望由规则表设置规则。

=IF(B10="Yes",50+IF(C10="Yes",20+IF(D10="Yes",20+IF(E10="Yes",10,0))))

我尝试的可能非常不正确,但正如我所说,我不知道如何继续或修复它。

有人对我有建议吗?

或者,如果您需要进一步解释我想要实现的目标,如果有些不清楚,请告诉我,我会尽力解释。

也许你在追求 SUMPRODUCT:

=sumproduct(B$2:E$2,B3:E3="Yes")

Sheet的 F3 中,复制下来以适合,或者也许:

=sumproduct(transpose(Rules!B$2:B$5),B3:E3="Yes")

最新更新