追问:
先谢谢大红袍!
你帮忙改的我看了,录入没问题,但计算不满足要。我把 Table_订单明细 的 DataColChanged 代码改了,如下,前面的两个问题都解决了,但第3个问题还是存在,就是退出订单录入窗口,再次进入后,点击商品ID列录入商品信息时,提示:“无法访问已释放的对象”,我实在不知道是哪个对象释放了,是怎么被释放的??麻烦再看看
If Forms("订单录入").Opened Then
Dim yfzf As String '运费支付方式
'msgbox("这里")
yfzf = Forms("订单录入").Controls("ComboBox1").value
'msgbox(yfzf)
Dim dz As String = forms("订单录入").controls("TextBox5").text '地域
'msgbox(dz)
Dim yf As Single '运费
Dim dr As DataRow
Dim dr1 As Row = Tables("订单.订单明细").Current
Dim dr2 As DataRow
Select Case yfzf
Case "到付"
If e.DataCol.Name = "数量" Then '如果是数量列的内容变动
dr2 = DataTables("单价").Find("商品ID ='" & dr1("商品ID") & "'")
dr1("运费单价") = 0
dr1("合价") = dr1("数量") * dr1("单价")
dr1("成本") = dr1("数量") * dr2("代理单价")
dr1("结算合价") = dr1("数量") * dr2("进货单价")
End If
Case "免邮"
If e.DataCol.Name = "数量" Then '如果是数量列的内容变动
dr2 = DataTables("单价").Find("商品ID ='" & dr1("商品ID") & "'")
If dz IsNot Nothing Then
dr = DataTables("地域及运费").Find("市县 ='" & dz & "'")
dr1("运费单价") = dr("运费")
End If
dr1("合价") = dr1("数量") * dr1("单价") - dr1("数量") * dr1("运费单价")
dr1("成本") = dr1("数量") * dr2("代理单价") - dr1("数量") * dr1("运费单价")
dr1("结算合价") = dr1("数量") * dr2("进货单价") + dr1("数量") * dr1("运费单价")
End If
Case "寄付"
If e.DataCol.Name = "数量" Then '如果是数量列的内容变动
dr2 = DataTables("单价").Find("商品ID ='" & dr1("商品ID") & "'")
If dz IsNot Nothing Then
dr = DataTables("地域及运费").Find("市县 ='" & dz & "'")
dr1("运费单价") = dr("运费")
End If
dr1("合价") = dr1("数量") * dr1("单价") + dr1("数量") * dr1("运费单价")
dr1("成本") = dr1("数量") * dr2("代理单价") + dr1("数量") * dr1("运费单价")
dr1("结算合价") = dr1("数量") * dr2("进货单价") + dr1("数量") * dr1("运费单价")
End If
End Select
End If