以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助] 数量分配 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=140539) |
||||
-- 作者:sanny -- 发布时间:2019/9/7 20:29:00 -- [求助] 数量分配 你好,老师,可不可以帮忙完善一这个功能。要求结果如图红色圈出的。
把表B中第一列与表A第一列相同的名称的数量分配到表A的第三列中,分配的数量不能大于第二列的数量,如果表B中的数量不能满足,就显示缺多少,每二次这个代码再出现就累计起来。谢谢。
![]() ![]()
|
||||
-- 作者:WELOVEFOX -- 发布时间:2019/9/8 8:59:00 -- 有点PMC成品出库数量满不满足的味道,以前做过,但不是这个思路,忘了,帮顶吧。 |
||||
-- 作者:sanny -- 发布时间:2019/9/8 22:52:00 -- 附件中有类似的代码的,但不知道怎么修改了。 |
||||
-- 作者:有点蓝 -- 发布时间:2019/9/8 23:12:00 -- datacolchanged事件 If e.DataCol.Name = "第二列" Dim sum As Integer = e.DataTable.Compute("sum(第二列)","[_Identify] < " & e.DataRow("_Identify") & " and 第一列 = \'" & e.DataRow("第一列") & "\'") Dim dr As DataRow = DataTables("表B").Find("第一列 = \'" & e.DataRow("第一列") & "\'") If dr IsNot Nothing Then Dim cnt As Integer = dr("第二列") - sum - e.NewValue If cnt > 0 Then e.DataRow("第三列") = e.NewValue Else e.DataRow("第三列") = cnt End If End If End If |
||||
-- 作者:sanny -- 发布时间:2019/9/9 22:12:00 -- 你好,可以用按钮代码实现吗? |
||||
-- 作者:有点蓝 -- 发布时间:2019/9/9 22:36:00 -- 看懂逻辑,自行改 |