如何根据Excel中的两个条件得到加权总和?

我在Excel中有这个表格: 在这里输入图像描述

我想根据两个条件得到加权总和:

  • 无论是公司1还是公司2 (股份数量不同)
  • column A公司1 )和column B公司2 )是否有01 (乘数不同)

例:
让我们计算第2行的加权总和:

总和 = 2乘数1 )* 501股价格 )* 3Company 1股票数量 )+

+ 0.5乘数0 )* 501股价格 )* 6Company 2股票数量 )= 450

所以, 第2排的 总和 = 450


现在我只使用这个代码检查乘数( 10 ):

 =COUNTIF(A2:B2,0)*$B$9*$B$8 + COUNTIF(A2:B2,1)*$B$9*$B$7 

但不考虑公司1公司2的股份数量。 我只用乘数乘以1股价格 ,而不是乘股数量)。


我怎样才能检查是否是公司1公司2乘以相应的股份数量


UPD:

当只有两家公司时, Rasmus0607给出了一个解决scheme:

 =$B$9*$E$8*IF(A2=1;$B$7;$B$8)+$B$9*$E$9*IF(B2=1;$B$7;$B$8) 

Tom Sharpe给出了更一般的解决scheme(公司数量可以大于2)


我将我的Excelfile upload到DropBox: Excel文件

我可以提供一个更为一般的方法来做事后处理,你可以通过修改第二个CHOOSE语句来应用两个以上的列:

 =SUM(CHOOSE(2-A2:B2,$B$7,$B$8)*CHOOSE(COLUMN(A:B),$E$8,$E$9))*$B$9 

不幸的是,这是一个数组公式,你必须inputCtrl Shift Enter 。 但是,如果用一些重复的方法来使用其他的答案,并保持简单,那么这个问题会不会更好。

你也可以试试这个:

 =SUMPRODUCT(N(OFFSET($B$6,2-A2:B2,0)),N(OFFSET($E$7,COLUMN(A:B),0)))*$B$9 

在这里输入图像说明

以下是三家公司的情况

 =SUM(CHOOSE(2-A2:C2,$B$7,$B$8)*CHOOSE(COLUMN(A:C),$F$8,$F$9,$F$10))*$B$9 

(数组公式)或

 =SUMPRODUCT(N(OFFSET($B$6,2-A2:C2,0)),N(OFFSET($F$7,COLUMN(A:C),0)))*$B$9 

= $ B $ 9 * $ E $ 8 * IF(A2 = 1; $ B $ 7; $ B $ 8)+ $ B $ 9 * $ E $ 9 * IF(B2 = 1; $ B $ 7; $ B $ 8)

由于在COUNTIF函数中,事先不知道哪个公司的列包含0或1,我build议使用IF更长,但更系统的解决scheme:

=$B$9*$E$8*IF(A2=1;2;0,5)+$B$9*$E$9*IF(B2=1;2;0,5)

这是不太一般的,但应该产生你期望在这种情况下的结果。