以下是引用shangyu在2006-3-7 13:18:01的发言:
=MMULT(SUMIF(OFFSET(B7,,COUNTIF(OFFSET(D11:D16,{0,6,12},),">"&SUMIF(OFFSET(C11:C16,{0,6,12},),G18:G23,OFFSET(D11:D16,{0,6,12},))),,COUNTIF(OFFSET(D11:D16,{0,6,12},),SUMIF(OFFSET(C11:C16,{0,6,12},),G18:G23,OFFSET(D11:D16,{0,6,12},)))),"<>")/COUNTIF(OFFSET(D11:D16,{0,6,12},),SUMIF(OFFSET(C11:C16,{0,6,12},),G18:G23,OFFSET(D11:D16,{0,6,12},))),{1;1;1})
思路:
蓝色部分求出在同一项目中,各成员得分大于某成员得分的个数(得到右偏移量);
黄色部分求出在同一项目中,各成员得分等于某成员得分的个数(得到数据宽度);
然后使用sumif得到该项目中某分数的总得分,再除以对应个数(得到各成员各项目明细得分);
最后mmult得到各成员总分。
问题:
对黄色或蓝色部分分别定义名称,可以;对其中的OFFSET(D11:D16,{0,6,12},)、OFFSET(C11:C16,{0,6,12},)分别定义名称后就不可以了[em06]。以前没注意过,请版主指正。