Foxtable(狐表)用户栏目专家坐堂 → 如何根据两个表数据进行条件求和后并相除?


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

主题:如何根据两个表数据进行条件求和后并相除?

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


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40574 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2011/9/18 11:23:00 [显示全部帖子]

您的文件无法下载,看不到投入产出表相关列名称,请修改“数量”为您要统计的投入产出表的那一列的名称,大概这样:

 

Tables("成本费用").Compute("Sum(制造费用)", "费用大项 = '制造费用' and 年 = 2010")/Tables("投入产出").Compute("Sum(数量)", "项目 = '1102投入总用量(吨)' and 日期 > #2009-12-31# and 日期 < #2011-01-01#")


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


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40574 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2011/9/18 11:25:00 [显示全部帖子]

如果成本费用表的“年”列为字符型,则为这样:

 

Tables("成本费用").Compute("Sum(制造费用)", "费用大项 = '制造费用' and 年 = ‘2010’")/Tables("投入产出").Compute("Sum(数量)", "项目 = '1102投入总用量(吨)' and 日期 > #2009-12-31# and 日期 < #2011-01-01#")


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


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40574 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2011/9/18 13:19:00 [显示全部帖子]

表达式列只能用表达式,不能直接用代码,请细看帮助!

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


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40574 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2011/9/18 13:21:00 [显示全部帖子]

将一楼的文件重新上传一下,我这里无法下载,不能按照文件所需帮助您!

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


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40574 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2011/9/18 13:52:00 [显示全部帖子]

这里可以简写:

Dim Sum1 As Double

Dim Sum2 As Double

Dim Sum3 As Double

 

等效于:

Dim Sum1,Sum2,Sum3 As Double

 


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


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40574 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2011/9/18 16:36:00 [显示全部帖子]

没明白您啥意思?


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


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40574 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2011/9/18 18:48:00 [显示全部帖子]

显示在标签相对简单:

 

Dim Sum1,Sum2 As Double

Sum1 = Tables("成本费用").Compute("Sum(金额)", "费用大项 = '制造费用' And 日期>=#2010-01-01# And 日期<#2011-01-01#")

Sum2 = Tables("投入产出").Compute("Sum(数据)", "项目 = '1102投入总用量(吨)' And 日期>=#2010-01-01# And 日期<#2011-01-01#")

Forms("窗口1").Controls("label1").text = (Sum1/Sum2).text


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


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40574 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2011/9/18 23:05:00 [显示全部帖子]

去掉最后一个.text:

Dim Sum1,Sum2 As Double

Sum1 = Tables("成本费用").Compute("Sum(金额)", "费用大项 = '制造费用' And 日期>=#2010-01-01# And 日期<#2011-01-01#")

Sum2 = Tables("投入产出").Compute("Sum(数据)", "项目 = '1102投入总用量(吨)' And 日期>=#2010-01-01# And 日期<#2011-01-01#")

Forms("窗口1").Controls("label1").text = (Sum1/Sum2)

[此贴子已经被作者于2011-9-18 23:05:51编辑过]

 回到顶部