想问一下工程师,下面代码有没有什么问题,运行的时候会出错
Dim Val As Double
InputValue(Val, "初始化日期","请输入自筹医疗所属日期,如201608:")
DataTables("自筹医疗统计").ReplaceFor("所属月份", Val, "[工号] Is Not Null")
For Each jbcl As DataRow In DataTables("自筹医疗统计").Select("工号 is not null")
jbcl("原自筹医疗") = jbcl("自筹医疗")
If Val > 0 Then
Dim dqrq As Double = Val - 18*100
If Math.Round(jbcl("小孩出生日1")/100,0) -dqrq < 0 AndAlso jbcl("小孩出生日1") <> 0 Then
jbcl("自筹医疗1") = 0
ElseIf Math.Round(jbcl("小孩出生日1")/100,0) -dqrq >= 0 Then
jbcl("自筹医疗1") = 5
ElseIf jbcl("小孩出生日1") = 0 Then
jbcl("自筹医疗1") = 0
End If
If Math.Round(jbcl("小孩出生日2")/100,0) -dqrq < 0 AndAlso jbcl("小孩出生日2") <> 0 Then
jbcl("自筹医疗2") = 0
ElseIf Math.Round(jbcl("小孩出生日2")/100,0) -dqrq >= 0 Then
jbcl("自筹医疗2") = 5
ElseIf jbcl("小孩出生日2") = 0 Then
jbcl("自筹医疗2") = 0
End If
If Math.Round(jbcl("小孩出生日3")/100,0) -dqrq < 0 AndAlso jbcl("小孩出生日3") <> 0 Then
jbcl("自筹医疗3") = 0
ElseIf Math.Round(jbcl("小孩出生日3")/100,0) -dqrq >= 0 Then
jbcl("自筹医疗3") = 5
ElseIf jbcl("小孩出生日3") = 0 Then
jbcl("自筹医疗3") = 0
End If
If Math.Round(jbcl("小孩出生日4")/100,0) -dqrq < 0 AndAlso jbcl("小孩出生日4") <> 0 Then
jbcl("自筹医疗4") = 0
ElseIf Math.Round(jbcl("小孩出生日4")/100,0) -dqrq >= 0 Then
jbcl("自筹医疗4") = 5
ElseIf jbcl("小孩出生日4") = 0 Then
jbcl("自筹医疗4") = 0
End If
End If
If jbcl("备注") = "双职工" Then
jbcl("自筹医疗") = (jbcl("自筹医疗1") + jbcl("自筹医疗2") + jbcl("自筹医疗3") + jbcl("自筹医疗4")) / 2
Else
jbcl("自筹医疗") = jbcl("自筹医疗1") + jbcl("自筹医疗2") + jbcl("自筹医疗3") + jbcl("自筹医疗4")
End If
Next