Foxtable(狐表)用户栏目专家坐堂 → 统计累计问题


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

主题:统计累计问题

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


加好友 发短信
等级:幼狐 帖子:98 积分:1378 威望:0 精华:0 注册:2012/9/16 14:32:00
统计累计问题  发帖心情 Post By:2012/11/3 18:06:00 [只看该作者]

老师,您好,我有一个表,需要统计每个编号当前行月份往前12个月的数量,年月列格式为:“2012-11”,我的思路是先定义一个行集合,集合赋值用datatables的select方法,然后定义一个变量,用for each遍历所有已select的行,累计变量的值,即可得到当前行往前12个月的累计数,比如当前行年月2012-11.则需要统计2011-12至2012-11的累计数,今天试了很久,编写出的select表达式总是出错,望老师赐教

 

dim drs  as new list(of datarow)=datatables("表A").select("编号='" & e.datarow("编号") & ”’ and ...  )

dim t as double

for each dr as datarow in drs

t=t+dr("第3列")

next

messagebox.show("当前行往前累计12个月的累计数:" & t ,"结果")

年月 编号 金额
2011-11 A1 10
2011-12 A2 20
2012-01 A3 10
2012-02 A4 20


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


加好友 发短信
等级:九尾狐 帖子:2193 积分:13908 威望:0 精华:2 注册:2012/2/25 10:59:00
  发帖心情 Post By:2012/11/3 18:43:00 [只看该作者]

思路不好,应该这样:先筛选出前12个月的记录,然后按编号分组统计

 回到顶部
帅哥,在线噢!
狐狸爸爸
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/11/5 9:01:00 [只看该作者]

Dim dt As Date = Tables("表A").Current("日期")
dt = dt.AddMonths(-12)
Dim v AS double = DataTables("表A").Compute("Sum(数量)", "日期 >= # " & dt & "#")

MessageBox.show(v)

 


 回到顶部