以下两段代码,我感觉应当是一样的,为什么实际是不同的结果呢?感觉是三个条件只要满足一个就删除这行,为什么要先看一下第一个条件的结果呢?
For Each dr As DataRow In DataTables("供应商付款收piao").Select("")
Dim r As DataRow
r = DataTables("采购合同").Find("客户编号 = '" & dr("客户编号") & "'" )
If r IsNot Nothing Then
If Round2(dr("fa piao应付款金额(元)"),2) = 0.00 AndAlso Round2(dr("合同应付款金额(元)"),2) = 0.00 Then
dr.Delete()
End If
Else If Round2(dr("fa piao应付款金额(元)"),2) = 0.00 Then
dr.Delete()
End If
Next
与
For Each dr As DataRow In DataTables("供应商付款收piao").Select("")
Dim r As DataRow
r = DataTables("采购合同").Find("客户编号 = '" & dr("客户编号") & "'" )
If r IsNot Nothing AndAlso Round2(dr("fa piao应付款金额(元)"),2) = 0.00 AndAlso Round2(dr("合同应付款金额(元)"),2) = 0.00 Then
dr.Delete()
Else If Round2(dr("fa piao应付款金额(元)"),2) = 0.00 Then
dr.Delete()
End If
Next