这样改一下试试
If e.Col.Name="出货数量" Then
If e.Row("客户单号")<>Nothing And e.Row("分批单号")<>Nothing And e.Row("商品名称")<>Nothing And e.Row("品牌")<>Nothing And e.Row("封装")<>Nothing Then
Dim sql As new SQLCommand '计算出销售出货表中的出货总量
sql.C
sql.CommandText="select sum(出货数量) From {销售出货明细表} Where 客户" & _
"名称='" & e.Row("客户名称") & "'And 客户单号='" & e.Row("客户单号") & "'And 分批" & _
"单号='" & e.Row("分批单号") & "'And 商品名称='" & e.Row("商品名称") & "'And 品牌='" & e.Row("品牌") & "'And 封装='" & e.Row("封装") & "'"
Dim sql1 As new SQLCommand
sql1.C '按条件查询出本商品的销售订单数量
sql1.CommandText="select 数量 From {销售订单明细表} Where 客户" & _
"名称='" & e.Row("客户名称") & "'And 客户单号='" & e.Row("客户单号") & "'And 分批" & _
"单号='" & e.Row("分批单号") & "'And 商品名称='" & e.Row("商品名称") & "'And 品牌='" & e.Row("品牌") & "'And 封装='" & e.Row("封装") & "'"
If sql1.ExecuteScalar -sql.ExecuteScalar+e.Row("出货数量")-e.Row.DataRow.OriginalValue("出货数量") <0 Then
MessageBox.Show("出货数量大于销售订单数量!","提示:",MessageBoxButtons.OK,MessageBoxIcon.Information)
End If
End If
End If