如何根据另一个单元格的值有条件地对一个单元格求和?

How do I conditionally sum a cell based on the value of another cell?

我有一个糟糕的公式,看起来像这样:

=if(B17="Yes",B)+if(C17="Yes",C)+if(D17="Yes",D)+if(E17="Yes",E)+if(F17="Yes",F)

如果我的长度超过 F 列,我还希望能够扩展它。

基本上,其他人可以更改他们自己的行,在本示例中为第 17 行,但有很多行都是这样。

https://docs.google.com/spreadsheets/d/1YKCaGKVmiqfJQz9RcLiLOFXVpUqScNXcYOkPVSOVKz4/edit?usp=sharing

尝试:

=INDEX(IFERROR(1/(1/SUM(IF(B17:W17="yes", B:W, )))))

更新

或删除 Y17:Y 中的所有内容并在 Y17 上使用:

=INDEX(IFERROR(1/(1/MMULT(IF(B17:W="yes", B7:W7, 0), SEQUENCE(COLUMNS(B:W), 1, 1, )))))