天天看点

统计函数——汇总统计时间类数据

如下数据源

要求统计各区分关于时间类的数据,如下图:

<a href="http://kirin.blog.51cto.com/attachment/201208/9/50281_1344528460Cjq1.jpg"></a>

2至5列数据,如下设置公式并向下拖动:

B列【接收数】:因为时间日期类数据在Excel中是一个数值,因此可以利用Count函数获取包含数值的个数 

=COUNT(陆家嘴!A:A) 

或:为了便于拖动可以使用Indirect,此函数立即对引用进行计算,并显示其内容。故用Indirect函数来引用工作表 

=COUNT(INDIRECT("'"&amp;A2&amp;"'!a:a")) 

C列【大于2.5小时的个数】:此处利用Countif函数统计某个区域求满足条件的单元格个数,对于工作表的引用依然使用Indirect函数。

=COUNTIF(INDIRECT("'"&amp;A2&amp;"'!c:c"),"&amp;gt;2:30") 

D列【2.5小时及时率】:此处数值为百分比,因此使用Text函数来对数据指定格式,此处定义为百分比并保留小数点后两位 

=TEXT(1-C2/B2,"0.00%") 

E列【大于24小时个数】:此处同C列,利用Countif函数统计个数

=COUNTIF(INDIRECT("'"&amp;A2&amp;"'!c:c"),"&amp;gt;24:00") 

F列【24小时及时率】:同D列,利用Text函数指定格式 

=TEXT(1-E2/B2,"0.00%") 

G列【平均延迟】:Text函数指定数据格式显示多少小时多少分钟,加“[]”的作用是让超过24小时的数据继续累加。此处Averageif函数统计某个区域满足条件的单元格数据的平均值 

=TEXT(AVERAGEIF(INDIRECT("'"&amp;A2&amp;"'!c:c"),"&lt;&gt;"&amp;""),"[h]:mm") 

在【汇总】行中,主要要说明一下G6单元格的整体【平均延迟】,先用sum函数对每个区分的整体延迟时间求和,然后累加再除接收个数 

=TEXT((SUM(INDIRECT("'"&amp;A2&amp;"'!C:C"))+SUM(INDIRECT("'"&amp;A3&amp;"'!C:C"))+SUM(INDIRECT("'"&amp;A4&amp;"'!C:C"))+SUM(INDIRECT("'"&amp;A5&amp;"'!C:C")))/B6,"[h]:mm") 

最终得到汇总表

<a href="http://kirin.blog.51cto.com/attachment/201208/9/50281_1344528461LA6Z.jpg"></a>

参考附件:http://sdrv.ms/Ml6uoq

继续阅读