你这段代码有问题吧?删除后测试。
For Each drr As DataRow In DataTables("二级节点标准表").DataRows
Dim drr1 As DataRow = DataTables("计划执行情况表").AddNew()
For Each dcc As DataCol In DataTables("二级节点标准表").datacols
If dcc.name<>"标准工作时间" And dcc.name<>"备注"
drr1(dcc.name)=drr(dcc.name)
End If
Next
drr1("地块")=Tables("项目基准时间表").current("地块")
drr1("公司名称")=Tables("项目基准时间表").current("公司名称")
drr1("项目或标段名称")=Tables("项目基准时间表").current("项目或标段名称")
drr1("项目编号")=Tables("项目基准时间表").current("项目编号")
Dim drff As DataRow=DataTables("项目基准时间表").find("项目编号='"& drr1("项目编号") &"' And 基准名称='"& drr1("完成时间参考基准") &"'")
If drr1("前置基准的天数")>0
drr1("计划完成时间")=drff("计划完成日期").adddays("-" & drr1("前置基准的天数"))
Else
drr1("计划完成时间")=drff("计划完成日期").adddays(math.abs(drr1("前置基准的天数")))
End If
Next
Tables("计划执行情况表").save
如果想优化代码,做个具体例子发上来测试。