一个合同号下的订单全部完成视为该订单完成,按时完成率以合同号怎样用函数公式实现?

目前是4张合同号,共7款产品型号。N列按时完成的是2个合同号中的4个型号,能否实现以合同号计算及时完成率?如:实际按时完成率按照合同号为2/4=50%;但按照型号来的话是:4/7=57%,这样有差异。需要按照合同号来计算。请大神门帮忙,感谢!

第1个回答  2021-12-13

按时完成率以合同号来计算:

辅助列O14:

=COUNTIFS(D$14:D14,D14,N$14:N14,"按时")

双击填充或下拉

完成率P14:

=TEXT(COUNTIF(O:O,1)/SUM(1/COUNTIF(INDIRECT("D14:D"&12+COUNTA(D:D)),INDIRECT("D14:D"&12+COUNTA(D:D)))),"0%")

数组公式在编辑状态下同时按下Ctrl+Shift+Enter,当出现大括号即可,如图:

追问

早上好,我想再统计按时完成的合同数,比如现在按时的是4项,对应的合同号是2个,这个公式该怎么写?谢谢!

追答

=COUNTIF(O:O,1)
以下为不用辅助列:
按时完成数对应该合同数个数:
=SUMPRODUCT((1/(COUNTIF(INDIRECT("D14:D"&12+COUNTA(D:D)),INDIRECT("D14:D"&12+COUNTA(D:D)))))*(INDIRECT("N14:D"&12+COUNTA(D:D))="按时"))
完成率:

=TEXT(SUMPRODUCT((1/(COUNTIF(INDIRECT("D14:D"&12+COUNTA(D:D)),INDIRECT("D14:D"&12+COUNTA(D:D)))))*(INDIRECT("N14:D"&12+COUNTA(D:D))="按时"))/SUMPRODUCT(1/(COUNTIF(INDIRECT("D14:D"&12+COUNTA(D:D)),INDIRECT("D14:D"&12+COUNTA(D:D))))),"0%")
如有帮助,望采纳。

本回答被提问者采纳
相似回答