公式,用于计算char的多次出现并与列表中的相应值相乘

时间:2018-10-09 11:46:48

标签: excel excel-formula

我有一个人的名单,每天从列表中订购菜单。最后,我希望每个人每周获得一笔款项。

这里的问题是,每个人每天都可以订购多个菜单。

我当前用于计算一个菜单的所有出现次数的公式是

{=SUM(LEN(B$2:F$2)-LEN(SUBSTITUTE(B$2:F$2,$A$6,"")))}

然后,我每天在一个额外的列中构建一个总和公式,该公式由该公式乘以每个菜单项的相应价格组成。即使在G2的星期一,这也会导致这个丑陋的公式:

{=SUM(LEN(B2)-LEN(SUBSTITUTE(B2,$A$6,"")))*$B$6+SUM(LEN(B2)-LEN(SUBSTITUTE(B2,$A$7,"")))*$B$7+SUM(LEN(B2)-LEN(SUBSTITUTE(B2,$A$8,"")))*$B$8+SUM(LEN(B2)-LEN(SUBSTITUTE(B2,$A$9,"")))*$B$9+SUM(LEN(B2)-LEN(SUBSTITUTE(B2,$A$10,"")))*$B$10+SUM(LEN(B2)-LEN(SUBSTITUTE(B2,$A$11,"")))*$B$11+SUM(LEN(B2)-LEN(SUBSTITUTE(B2,$A$12,"")))*$B$12+SUM(LEN(B2)-LEN(SUBSTITUTE(B2,$A$13,"")))*$B$13+SUM(LEN(B2)-LEN(SUBSTITUTE(B2,$A$14,"")))*$B$14}

谁能想到一个更好的公式:

  1. 计算多个单元格上的多次出现
  2. 计算整周的总和,无需额外的列

enter image description here

数组格式:CTRL + SHIFT + ENTER

1 个答案:

答案 0 :(得分:1)

这里不需要CSE公式。

=SUMPRODUCT((LEN(B2:F2)-LEN(SUBSTITUTE(B2:F2,A$6:A$14,"")))*B$6:B$14)

尽管仅使用一个公式,但返回19.75。

根据需要向下复制。

致谢