现在一万行数据要1分钟,太慢了,主要时间应该在Tables("临时表").AddNew 上面,那怎么样才能判断有多少据的行,及有效数据列的总行数
SystemReady = False '关闭刷新
Try
DataTables("临时表").DataRows.Clear '先清空临时表
For Each r As Row In Tables("电气工程量").Rows '遍历电气工程量的各行
If r.IsNull("电线_规格1") = False Then '先判断型号1是否为空
Dim r1 As Row = Tables("临时表").AddNew
r1("单项工程名称") = r("单项工程名称")
r1("单位工程名称") = r("单位工程名称")
r1("分项工程名称") = r("分项工程名称")
r1("型号规格") = r("电线_规格1")
r1("清单数量") = r("清单_电线1合计")
r1("定额数量") = r("定额_电线1合计")
End If
If r.IsNull("电线_规格2") = False Then '先判断型号2是否为空
Dim r2 As Row = Tables("临时表").AddNew
r2("单项工程名称") = r("单项工程名称")
r2("单位工程名称") = r("单位工程名称")
r2("分项工程名称") = r("分项工程名称")
r2("型号规格") = r("电线_规格2")
r2("清单数量") = r("清单_电线2合计")
r2("定额数量") = r("定额_电线2合计")
End If
If r.IsNull("管道规格") = False Then '先判断型号2是否为空
Dim r3 As Row = Tables("临时表").AddNew
r3("单项工程名称") = r("单项工程名称")
r3("单位工程名称") = r("单位工程名称")
r3("分项工程名称") = r("分项工程名称")
r3("型号规格") = r("管道规格")
r3("清单数量") = r("管道合计")
r3("定额数量") = r("管道合计")
End If
Next
Catch ex As Exception
MessageBox.Show("计算错误")
End try
SystemReady = True '关闭刷新
Dim g As New GroupTableBuilder("汇总表", DataTables("临时表"))
g.Groups.AddDef("单项工程名称")
g.Groups.AddDef("单位工程名称")
g.Groups.AddDef("分项工程名称")
g.Groups.AddDef("型号规格")
g.Totals.AddDef("清单数量")
g.Totals.AddDef("定额数量")
g.Build()
MainTable = Tables("汇总表")
[此贴子已经被作者于2014-11-5 18:48:55编辑过]