在窗口中的TABLE表,我先通过代码:Tables(e.Form.Name & "_Table1").Fill("s elect 卷号,牌号,厚度,宽度,重量 ...... from {工序合并表} ......
If DataTables(e.Form.Name & "_Table1").datacols.Contains("长度") Then
Else
DataTables(e.Form.Name & "_Table1").DataCols.Add("长度", Gettype(Double))
End If
For Each r As Row In Tables(e.Form.Name & "_table1").Rows
Dim dr密度 As DataRow
dr密度 = _dt密度表.SQLFind("牌号 = '" & r("牌号") & "'" )
If dr密度 IsNot Nothing Then
r("长度") = r("重量")/r("厚度")/r("宽度")/dr密度("密度")*1000 ‘根据密度、厚度、宽度算出长度的公式
Else r("长度") = Nothing
End If
Next
上述代码就生成了如下结构的表:
卷号 牌号 厚度 宽度 重量 长度
卷1 牌号A 0.1 100 200 1000
卷2 牌号A 0.1 200 200 500
卷3 牌号B 0.1 300 500 300
现在希望得到一张既汇总又能计算长度的表,如下:
牌号 长度
牌号A 1500
牌号B 300
请教老师应该如何写s elect语句,由于长度这个字段是根据每个卷的密度、厚度、宽度实时增加及计算的,所以不会写了。
[此贴子已经被作者于2016/9/12 20:06:02编辑过]