以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 求助,如何通过表统计另外一个表? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=110245) |
||||
-- 作者:zsslly -- 发布时间:2017/11/29 19:03:00 -- 求助,如何通过表统计另外一个表?
如图如案例,如何通过表去统计“总表”,我做了一个案例,求助? 分析表里面的写的代码也不对,应该怎么改? |
||||
-- 作者:zsslly -- 发布时间:2017/11/29 19:05:00 -- If e.DataCol.Name = "主持人" Then e.DataRow("已发货") = DataTables("总表").Compute("count(_Identify)", "主持人 = \'" & e.DataRow("主持人") & "\' and 持单状态 = \'签单\'") e.DataRow("退单") = DataTables("总表").Compute("count(_Identify)", "主持人 = \'" & e.DataRow("主持人") & "\' and 持单状态 = \'跑单\'") e.DataRow("处理中") = DataTables("总表").Compute("count(_Identify)", "主持人 = \'" & e.DataRow("主持人") & "\' and 持单状态 = \'可操作\'") e.DataRow("预收货款") = DataTables("总表").Compute("count(_Identify)", "主持人 = \'" & e.DataRow("主持人") & "\' and 持单状态 = \'预收设计\'") e.DataRow("预发货品") = DataTables("总表").Compute("count(_Identify)", "主持人 = \'" & e.DataRow("主持人") & "\' and 持单状态 = \'预签\'") e.DataRow("客户数") = DataTables("总表").Compute("count(_Identify)", "主持人 = \'" & e.DataRow("主持人") & "\'") End If 因为”主持人“列中的人名没有统一,也不知道怎么统,知道有like,但不知道怎么改?
|
||||
-- 作者:有点甜 -- 发布时间:2017/11/29 19:51:00 -- 可以这样
e.DataRow("已发货") = DataTables("总表").Compute("count(_Identify)", "(主持人 = \'" & e.DataRow("主持人") & "\' or 主持人 = \'" & e.DataRow("主持人") & "(完成)\') and 持单状态 = \'签单\'")
或者这样
e.DataRow("已发货") = DataTables("总表").Compute("count(_Identify)", "(主持人 like \'" & e.DataRow("主持人") & "%\' and 持单状态 = \'签单\'") |
||||
-- 作者:zsslly -- 发布时间:2017/11/29 20:18:00 -- 代码改好了: If e.DataCol.Name = "主持人" Then e.DataRow("已发货") = DataTables("总表").Compute("count(_Identify)", "主持人 like \'" & e.DataRow("主持人") & "%\' and 持单状态 = \'已发货\'") e.DataRow("退单") = DataTables("总表").Compute("count(_Identify)", "主持人 like \'" & e.DataRow("主持人") & "%\' and 持单状态 = \'退单\'") e.DataRow("处理中") = DataTables("总表").Compute("count(_Identify)", "主持人 like \'" & e.DataRow("主持人") & "%\' and 持单状态 = \'处理中\'") e.DataRow("预收货款") = DataTables("总表").Compute("count(_Identify)", "主持人 like \'" & e.DataRow("主持人") & "%\' and 持单状态 = \'预收货款\'") e.DataRow("预发货品") = DataTables("总表").Compute("count(_Identify)", "主持人 like \'" & e.DataRow("主持人") & "%\' and 持单状态 = \'预发货品\'") e.DataRow("客户数") = DataTables("总表").Compute("count(_Identify)", "主持人 like \'" & e.DataRow("主持人") & "%\'") End If列 因为“总表”里有一列“场次名称”,其中是记录参加的场次的,有的是多个值,我在“分析表”里也设计了一个“场次名称”列,如上图,我想统计“总表”里所有包含这个场次名称的数量,求助?
|
||||
-- 作者:zsslly -- 发布时间:2017/11/29 20:47:00 -- 老师问下,如果“持单状态”中还有其它状态,如“计划中”,“跟踪中”,我用or或and联接,结果都不对,怎么写? If e.DataCol.Name = "主持人" Then e.DataRow("已发货") = DataTables("总表").Compute("count(_Identify)", "主持人 like \'" & e.DataRow("主持人") & "%\' and 持单状态 = \'已发货\'") e.DataRow("退单") = DataTables("总表").Compute("count(_Identify)", "主持人 like \'" & e.DataRow("主持人") & "%\' and 持单状态 = \'退单\'") e.DataRow("处理中") = DataTables("总表").Compute("count(_Identify)", "主持人 like \'" & e.DataRow("主持人") & "%\' and 持单状态 = \'处理中\' and 持单状态 = ‘计划中’ and 持单状态 = \'跟踪中\'") e.DataRow("预收货款") = DataTables("总表").Compute("count(_Identify)", "主持人 like \'" & e.DataRow("主持人") & "%\' and 持单状态 = \'预收货款\'") e.DataRow("预发货品") = DataTables("总表").Compute("count(_Identify)", "主持人 like \'" & e.DataRow("主持人") & "%\' and 持单状态 = \'预发货品\'") e.DataRow("客户数") = DataTables("总表").Compute("count(_Identify)", "主持人 like \'" & e.DataRow("主持人") & "%\'") End If 同样求助?
|
||||
-- 作者:有点甜 -- 发布时间:2017/11/29 21:12:00 --
e.DataRow("处理中") = DataTables("总表").Compute("count(_Identify)", "主持人 like \'" & e.DataRow("主持人") & "%\' and (持单状态 = \'处理中\' or 持单状态 = \'计划中\' or 持单状态 = \'跟踪中\')")
|
||||
-- 作者:zsslly -- 发布时间:2017/11/29 21:48:00 -- 不好意思,在问一次? 因为“总表”里有一列“场次名称”,其中是记录参加的场次的,有的是多个值,我在“分析表”里也设计了一个“场次名称”列,如上图,我想统计“总表”里所有包含这个场次名称的数量,求助? |
||||
-- 作者:有点甜 -- 发布时间:2017/11/29 21:52:00 -- 看懂3楼、6楼代码,同样用like模糊查询就行。 |
||||
-- 作者:zsslly -- 发布时间:2017/11/29 22:38:00 -- 不好意思,这么晚还打扰,这句代码不知道那里有问题? e.DataRow("已签产值") = DataTables("峰和设计部").Compute("Sun(签单金额)", filter & "设计师 Like \'" & e.DataRow("设计师") & "%\' and 操作性 = \'签单\' and 活动标注 like \'%" & e.DataRow("活动名称") & "%\'")
|
||||
-- 作者:zsslly -- 发布时间:2017/11/29 22:45:00 -- 我是放在一起的,是不是要重新定义呢? |