如何为列表中的每一行求值函数,并在一个公式中获取所有行的平均值

时间:2019-07-01 10:02:31

标签: google-sheets

我有一个自过去某个日期以来每周获得的姓名(行)和得分(列)的列表。列表中的每个名称都应至少每4周测试一次。这个问题的目的是获得符合最低要求的人数百分比。

A列包含名称,第10行包含星期码。我在名称(B)旁边的栏中插入新的星期。因此,星期的顺序是最近的。

我还需要跟踪其历史。因此,对于每个名称周组合,我都会评估在当前周还是在前三个周中的任何一个周中都有分数。

我已经通过复制表格(姓名和星期)来回答了这个问题。我在原始表格中查找姓名/星期组合,并评估当前和下三个单元格的总和大于1。

如果true,则将单元格值设置为1。

如果false,则将单元格值设置为0。

结果是一个表,该表针对每个星期名称组合检查该人在该周是否合规。

这样做的公式(对于单元格D200)如下所示:

=IF(SUM(OFFSET(VLOOKUP($A200; $A$10:$99; MATCH(D$199; $10:$10; 0); FALSE); 0; 0; 1; 4))>0; 1; 0)

其中的单元格值表示以下内容:

=IF(SUM(OFFSET(VLOOKUP({NAME}; {ORIGINAL_TABLE}; MATCH({WEEK}; {ROW_WEEKS_ORIGINAL_TABLE}; 0); FALSE); 0; 0; 1; 4))>0; 1; 0)

现在,我可以计算每行的平均值,以查找每周的“达标”率。但是,由于表是动态的,因此很容易出错。该床单也将被许多其他人使用,因此需要是防呆的。我更喜欢使用arrayformula来为每一行评估给定的公式,并在每周的1个单元格中显示结果,其形式为列表中所有名称的[0-1]之间的平均值。

我可能非常接近想要的结果,但是我还没有设法获得正确的数组公式。

0 个答案:

没有答案