Foxtable(狐表)用户栏目专家坐堂 → 关于多条件求和


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

主题:关于多条件求和

帅哥哟,离线,有人找我吗?
文道古月
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:303 积分:2363 威望:0 精华:0 注册:2015/10/14 16:55:00
关于多条件求和  发帖心情 Post By:2015/12/10 8:50:00 [显示全部帖子]

老师,
       以下逻辑如果要实现的话,要用什么方法呢?请指点迷津!!图片点击可在新窗口打开查看

条件是:
1:当移动类型为101时,根据‘主动单元’、‘被动单元’的值、输入‘数量’,‘主动单元’加数,‘被动单元’减数
2:当移动类型为201时,根据‘主动单元’、‘被动单元’的值、输入‘数量’,‘主动单元’加数,‘被动单元’不变
3:当移动类型为202时,根据‘主动单元’、‘被动单元’的值、输入‘数量’,‘主动单元’减数,‘被动单元’不变
4:根据1/2/3条的规律,做对应加减,得到对应‘单元’的实际数值


想要达到的效果是:
1:当记录有几十万条时,如何快速统计?
2:根据‘输入日期’分别统计每天/每月/各‘单元’/各编码的实际数值?


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


 回到顶部
帅哥哟,离线,有人找我吗?
文道古月
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:303 积分:2363 威望:0 精华:0 注册:2015/10/14 16:55:00
  发帖心情 Post By:2015/12/10 9:15:00 [显示全部帖子]

是不是我搞复杂了,,

其实就是类似SAP的进销存关系

 回到顶部
帅哥哟,离线,有人找我吗?
文道古月
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:303 积分:2363 威望:0 精华:0 注册:2015/10/14 16:55:00
  发帖心情 Post By:2015/12/10 9:43:00 [显示全部帖子]

老师好

201和202的类型就是单纯的一加一减,但是101不行啊,它要同时对两个位置的数量对应加减

想实现上面的目的,要怎么做呢?类似帮助中的流水账形式,但是要复杂一些,


用统计表吗,还是查询表,结合流水账设计吗?

 回到顶部
帅哥哟,离线,有人找我吗?
文道古月
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:303 积分:2363 威望:0 精华:0 注册:2015/10/14 16:55:00
  发帖心情 Post By:2015/12/10 9:49:00 [显示全部帖子]

我是还不知道要用什么方式统计,

因为各单元的结果还要在第二天的基础上进行加减

这样一来每天至少有1W行的数据,累计下来一个月有几十万了

 回到顶部
帅哥哟,离线,有人找我吗?
文道古月
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:303 积分:2363 威望:0 精华:0 注册:2015/10/14 16:55:00
  发帖心情 Post By:2015/12/10 9:51:00 [显示全部帖子]

数据大了,不会影响随度吗
[此贴子已经被作者于2015/12/10 9:51:38编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
文道古月
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:303 积分:2363 威望:0 精华:0 注册:2015/10/14 16:55:00
  发帖心情 Post By:2015/12/10 10:06:00 [显示全部帖子]

噢噢噢,谢谢,

老师,我是第一次用FX,啃了差不多两个月的帮助和视频,想用一个项目具体熟练一下,怕出错了,所以问的仔细了点!

刚刚没表达清楚,是计算效率问题:

 第二天的数据,能不能只在前一天统计的数据结果上进行加减,不再算一遍前一天的数据,这样不是有效率一点吗

 回到顶部
帅哥哟,离线,有人找我吗?
文道古月
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:303 积分:2363 威望:0 精华:0 注册:2015/10/14 16:55:00
  发帖心情 Post By:2015/12/10 10:26:00 [显示全部帖子]

想到这里了,但是,加上日期就只是统计当天的数据,

而真实的数据是当天的数据还要在前一天的数据的基础上进行加减,这样才是真实的数据

那前一天的数据该怎么得到呢,是重新计算一遍(重新计算的话就又回到老问题了,没有效率)

还是用什么方法?(就是这里没有思路了)

 回到顶部
帅哥哟,离线,有人找我吗?
文道古月
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:303 积分:2363 威望:0 精华:0 注册:2015/10/14 16:55:00
  发帖心情 Post By:2015/12/10 10:33:00 [显示全部帖子]

恩,谢谢!!

 回到顶部
帅哥哟,离线,有人找我吗?
文道古月
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:303 积分:2363 威望:0 精华:0 注册:2015/10/14 16:55:00
  发帖心情 Post By:2015/12/10 14:59:00 [显示全部帖子]

下面的单元格赋值该怎么写呀

Dim nms As List (of String)
nms = DataTables("test").GetValues("主动单元")
For Each nm As String In nms
    With Tables("test")
        .AddNew()
        .Rows("主动单元") =   ’获取的值,分别写到新增的单元格中
    End With
Next

 回到顶部
帅哥哟,离线,有人找我吗?
文道古月
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:303 积分:2363 威望:0 精华:0 注册:2015/10/14 16:55:00
  发帖心情 Post By:2015/12/10 15:18:00 [显示全部帖子]

OK,琢磨出来了


Dim nms As List (of String)
nms = DataTables("test").GetValues("主动单元")
For Each nm As String In nms
    Dim dr As Row = Tables("test").AddNew
    dr("移动类型") = 001
    dr("主动单元") = nm
Next

 回到顶部
总数 14 1 2 下一页