以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 流水账 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=179486) |
-- 作者:胡噜胡噜毛 -- 发布时间:2022/8/26 9:11:00 -- 流水账 流水账计算结余,按照日期列筛选后,能不能根据每个月自动重算结余? 比如筛选一月,出现一月的记录,结余是一月的结余? Select Case e.DataCol.Name Case "收入_金额","支出_金额" Dim dr As DataRow Dim drs As List(of DataRow) dr = e.DataTable.Find("[_SortKey] < " & e.DataRow("_SortKey"), "[_SortKey] Desc") \'找出上一行 If dr Is Nothing Then \'如果没有找到上一行,说明本行就是第一行 e.DataRow("结余") = e.DataRow("收入_金额") - e.DataRow("支出_金额") dr = e.DataRow End If drs = e.DataTable.Select("[_SortKey] >= " & dr("_SortKey"), "[_SortKey]") For i As Integer = 1 To drs.Count - 1 \'重算余下行的余额 drs(i)("结余") = drs(i-1)("结余") + drs(i)("收入_金额") - drs(i)("支出_金额") Next End Select
|
-- 作者:有点蓝 -- 发布时间:2022/8/26 9:17:00 -- 把筛选条件加进来 Select Case e.DataCol.Name Case "收入_金额","支出_金额" Dim dr As DataRow dim filter as string if tables("xx表").filter > "" then filter = " and " & tables("xx表").filter end if Dim drs As List(of DataRow) dr = e.DataTable.Find("[_SortKey] < " & e.DataRow("_SortKey") & filter , "[_SortKey] Desc") \'找出上一行 |