excel中的这个函数相当于什么公式?

最后发布: 2020-07-09


问题

你好,在excel中这个代码相当于什么公式?

int[]  workHours[300];
int function extraHours(){
   int extra=0;
   For(i=3,i<=300,i++){
      If(workHours[i]>8){
         extra += workHours[i]-8;
      }
   }
   return extra;
}
excel excel-formula
回答

你可能会使用这个公式。

=SUMIF(A1:A300;">8")-COUNTIF(A1:A300;">8")*8

它是什么意思?

首先,这个 SumIf() 取所有大于8的数字之和。CountIf() 看这个被发现了多少次,每出现一次就减去8。


回答

我能想到的最直白的翻译是

=SUM(IF(A3:A300>8,A3:A300-8))

作为一个数组公式输入,使用 Ctrl换挡进入

=SUMPRODUCT((A3:A300>8)*(A3:A300-8))

作为普通公式输入。


回答

你的Excel表格是怎样的?我将假设 workHours 将会在专栏中给出 A 你的Excel表的。

你是否可以自由添加额外的列?在Excel中,为了简单起见,你不需要用一个公式来解决每个问题。例如,添加一个额外的列 WorkHoursMinus8 专栏 BB[i]=A[i]-8. 现在,你可以简单地使用公式 sumif 来计算所有 积极的 列内 B: SUMIF(B:B,">0").

这是否有帮助,还是你真的需要一个单一的公式而不需要额外的列?