嗨,伙计们,我有一个类似于下面的表格:
Company / Score 1/ Score 2/ Score 3
Apple / 5 / 4 / 3
Banana / 3 / 6 / 6
Kiwi / 0 / 5 / 1有没有办法从这个列表中找到表现最好的公司,使用他们在一个公式中得分的平均值,而不是使用helper列?因此,对于上面的示例,我的返回将是company Banana-因为当对所有三列求平均值时,它会给我最高的分数。另外,我的意思是,如果大于0,则求和/计数,所以对于奇异果来说,平均值是3,而不是2。
发布于 2018-05-24 04:53:10
假设你的分数是非负数,并从B2开始:
=INDEX(A2:A4,MATCH(MAX(MMULT(B2:D4,--(ROW(INDIRECT("1:"&COLUMNS(B2:D2)))>0))/MMULT(--(B2:D4>0),--(ROW(INDIRECT("1:"&COLUMNS(B2:D2)))>0))),MMULT(B2:D4,--(ROW(INDIRECT("1:"&COLUMNS(B2:D2)))>0))/MMULT(--(B2:D4>0),--(ROW(INDIRECT("1:"&COLUMNS(B2:D2)))>0)),0))这将扩展到所需的任意数量的行/列。请记住,在平局的情况下,它将返回第一个高分。此外,如果有可能获得全零,则应该使用(ctrl+shift+enter):将传递给MAX的数组包装起来(需要以数组公式IFERROR的形式输入此公式
=INDEX(A2:A4,MATCH(MAX(IFERROR(MMULT(B2:D4,--(ROW(INDIRECT("1:"&COLUMNS(B2:D2)))>0))/MMULT(--(B2:D4>0),--(ROW(INDIRECT("1:"&COLUMNS(B2:D2)))>0)),0)),MMULT(B2:D4,--(ROW(INDIRECT("1:"&COLUMNS(B2:D2)))>0))/MMULT(--(B2:D4>0),--(ROW(INDIRECT("1:"&COLUMNS(B2:D2)))>0)),0))https://stackoverflow.com/questions/50496291
复制相似问题