以下为一段求12个月逐月平均人数之和的代码,测试中统计500人需要3秒,请问有没有高效的写法呢?
Dim ts As Integer '当月天数
Dim kssj As Date=#01/01/2013#
Dim monavg As Double ' 月平均人数
For m As Integer=0 To 11 '月
ts= ts+Date.daysinmonth(kssj.year, kssj.month)
For t As Integer=1 To Date.daysinmonth(kssj.year,kssj.month) '从开始时间起逐天计算
rs=rs+DataTables("zzjbqk").compute("count(姓名)","[人员类型] like '机关%' And [单位代码] Like '"& dwdm &"%' and [调入时间]<#"& kssj &"#") '逐天累加人数至全月
kssj = kssj.adddays(1)
Next
monavg=monavg+rs/ts'逐月平均人数和
ts=0
If kssj>#12/21/2013# Then '如果开始时间>截止时间
Exit For
End If
rs=0
Next