Foxtable(狐表)用户栏目专家坐堂 → 列表达式


  共有1974人关注过本帖树形打印复制链接

主题:列表达式

帅哥哟,离线,有人找我吗?
飞过海洋
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:187 积分:1434 威望:0 精华:0 注册:2017/10/21 17:27:00
  发帖心情 Post By:2017/12/8 23:46:00 [只看该作者]

太好了.谢谢老师!

 回到顶部
帅哥哟,离线,有人找我吗?
飞过海洋
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:187 积分:1434 威望:0 精华:0 注册:2017/10/21 17:27:00
  发帖心情 Post By:2017/12/8 23:50:00 [只看该作者]

老师:

     请您看一下.我7楼上传的表格中,明细账的后三列 .要求计算从年初.到年末的每个人累计时时的结存张数.金额和废piao.在明细账的表属性里有一个是在您写的代码基础上改过的代码!可是执行起来不对啊!请问这个代码要怎么写啊?

以下是有问题的代码

 Select Case e.DataCol.Name
   
    Case "站结存废piao","站结存张数","站领入_张数","站_上年结转张数","站售出_张数","站售出_金额","站售出_废piao","站结存金额"
       
        Dim dr As DataRow
       
        Dim mr As DataRow = e.DataRow
       
        Dim drs As List(of DataRow)
       
        dr = e.DataTable.Find("[_SortKey] < " & mr("_SortKey") & " And [站_日期] = '" & mr("站_日期") & "'", "[_SortKey] Desc")
       
        If dr Is Nothing Then '如果没有上一行,说明本行就是同产品的第一行
           
            mr("站结存张数") = mr("站_上年结转张数") + mr("站领入_张数") - mr("站售出_张数")- mr("站售出_废piao")
           
            mr("站结存金额") = mr("站售出_金额")
           
            mr("站结存废piao") = mr("站售出_废piao")
            dr = mr
           
        End If
       
        drs = e.DataTable.Select("[_SortKey] >= " & dr("_SortKey") & " And [站_日期] = '" & dr("站_日期") & "'")
       
        For i As Integer = 1 To drs.Count - 1 '重算余下行的余额
           
            drs(i)("站结存张数") = drs(i-1)("站结存张数") + drs(i)("站_上年结转张数") + drs(i)("站领入_张数") - drs(i)("站售出_张数")- drs(i)("站售出_废piao")
           
            drs(i)("站结存金额") = drs(i-1)("站结存金额") + drs(i)("站售出_金额")
            drs(i)("站结存废piao") = drs(i-1)("站结存废piao") + drs(i)("站售出_废piao")
        Next
       
End Select

[此贴子已经被作者于2017/12/9 7:24:57编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106884 积分:543633 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/12/9 8:45:00 [只看该作者]

什么地方不对?截图并例举数字说明

 回到顶部
帅哥哟,离线,有人找我吗?
飞过海洋
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:187 积分:1434 威望:0 精华:0 注册:2017/10/21 17:27:00
  发帖心情 Post By:2017/12/9 10:43:00 [只看该作者]

以下是引用有点蓝在2017/12/9 8:45:00的发言:
什么地方不对?截图并例举数字说明


图片点击可在新窗口打开查看此主题相关图片如下:yxj41q27{oj48zy7{@6)@~v.png
图片点击可在新窗口打开查看
老师:

      上图是明细账的页面,同一姓名的人每天发生的张数,金额,废piao不一样,需要手工录入当天的发生额,后面三列要自动算出,每人的从年初至当天的累计张数,金额,废piao的数量.但现在只算出的是个人当天发生的一行的累计 ,请老师给改一下代码.


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106884 积分:543633 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/12/9 11:12:00 [只看该作者]

你是根据“站_日期”值进行条件判断的,单元格都没有值,当然不会计算了。请先填入具体的日期

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
飞过海洋
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:187 积分:1434 威望:0 精华:0 注册:2017/10/21 17:27:00
  发帖心情 Post By:2017/12/9 11:29:00 [只看该作者]

以下是引用有点蓝在2017/12/9 11:12:00的发言:
你是根据“站_日期”值进行条件判断的,单元格都没有值,当然不会计算了。请先填入具体的日期

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看
老师:
 
    我作的表一共有3个,其中总账表是按日期条件来判断的.但这个明细账表要按人名来判断,请老师给我改一下吧.后面三列要按人名来计算个人的3列累计数据.


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106884 积分:543633 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/12/9 11:43:00 [只看该作者]

 对应改改不就行了

 dr = e.DataTable.Find("[_SortKey] < " & mr("_SortKey") & " And [姓名] = '" & mr("姓名") & "'", "[_SortKey] Desc")


drs = e.DataTable.Select("[_SortKey] >= " & dr("_SortKey") & " And [姓名] = '" & dr("姓名") & "'")

 回到顶部
总数 17 上一页 1 2