Foxtable(狐表)用户栏目专家坐堂 → 请问如何针对表1、表2中相同的项目进行合计


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

主题:请问如何针对表1、表2中相同的项目进行合计

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


加好友 发短信
等级:童狐 帖子:227 积分:2826 威望:0 精华:0 注册:2008/9/1 15:41:00
请问如何针对表1、表2中相同的项目进行合计  发帖心情 Post By:2011/4/27 12:52:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:book1.rar

 

 

 


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

 

  

 


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

 

请问如何对表1、表2中代码相同、项目名称相同的数据进行合计后放在另外一张表上


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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2011/4/27 13:07:00 [只看该作者]

合计到哪? 第一张还是第二张表?? 是用Excel做吗??

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


加好友 发短信
等级:童狐 帖子:227 积分:2826 威望:0 精华:0 注册:2008/9/1 15:41:00
  发帖心情 Post By:2011/4/27 13:10:00 [只看该作者]

合计到另外一张表上,将这两张表的数据导入到foxtable中,这样要快些,数据量有点大
[此贴子已经被作者于2011-4-27 13:11:55编辑过]

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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2011/4/27 13:17:00 [只看该作者]

这个简单,给个例子帮你搞定。(做例子麻烦呀)

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


加好友 发短信
等级:童狐 帖子:227 积分:2826 威望:0 精华:0 注册:2008/9/1 15:41:00
  发帖心情 Post By:2011/4/27 13:21:00 [只看该作者]

就是上面的两张表(附件已上传),导入foxtable中,然后将代码相同、项目名称相同的数据进行合计后放在另外一张表上中,同样保留有代码和项目名称

[此贴子已经被作者于2011-4-27 13:21:32编辑过]

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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2011/4/27 13:45:00 [只看该作者]

'1、导入:

Dim ip As New Importer
ip.SourcePath = "c:\book1.xls" '指定数据文件
ip.SourceTableName = "表1" '指定要导入的表
ip.NewTableName ="表1" '导入后的表名
ip.Format = "Excel" '指定导入格式
ip.Import()

Dim ip1 As New Importer
ip1.SourcePath = "c:\book1.xls" '指定数据文件
ip1.SourceTableName = "表2" '指定要导入的表
ip1.NewTableName ="表2" '导入后的表名
ip1.Format = "Excel" '指定导入格式
ip1.Import()

 

'2、自己设计好 表3:

 

'3、充填:::::::::
Dim f As New Filler
f.SourceTable = DataTables("表1") '指定数据来源
f.SourceCols = "代码" '指定数据来源列
f.DataTable = DataTables("表3") '指定数据接收表
f.DataCols = "代码" '指定数据接收列
f.ExcludeExistValue = True
f.Fill() '填充数据

Dim f1 As New Filler
f1.SourceTable = DataTables("表2") '指定数据来源
f1.SourceCols = "代码" '指定数据来源列
f1.DataTable = DataTables("表3") '指定数据接收表
f1.DataCols = "代码" '指定数据接收列
f1.ExcludeExistValue = True
f1.Fill() '填充数据

 

'4、计算:::::::
Dim dr1,dr2 As DataRow
For Each dr As DataRow In DataTables("表3").datarows
    dr1 = DataTables("表1").Find("代码 = '" & dr("代码") & "'")
    dr2 = DataTables("表2").Find("代码 =  '" & dr("代码") & "'")
    If dr1 IsNot Nothing And dr2 IsNot Nothing
        dr("项目一") =  dr1("项目一") + dr2("项目一")
        dr("项目二") =  dr1("项目二") + dr2("项目二")
        dr("项目三") =  dr1("项目三")
        dr("项目四") =  dr1("项目四") + dr2("项目四")
        dr("项目五") =  dr1("项目五") + dr2("项目五")
        dr("项目七") =   dr2("项目七")
    ElseIf dr1 IsNot Nothing And dr2 Is Nothing
        dr("项目一") =  dr1("项目一")
        dr("项目二") =  dr1("项目二")
        dr("项目三") =  dr1("项目三")
        dr("项目四") =  dr1("项目四")
        dr("项目五") =  dr1("项目五")
    ElseIf dr1 Is Nothing And dr2 IsNot Nothing
        dr("项目一") =  dr2("项目一")
        dr("项目二") =  dr2("项目二")
        dr("项目四") =  dr2("项目四")
        dr("项目五") =  dr2("项目五")
        dr("项目七") =  dr2("项目七")
    End If
Next


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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2011/4/27 13:46:00 [只看该作者]

注意: 将参与计算的列都给为数字型···

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


加好友 发短信
等级:童狐 帖子:227 积分:2826 威望:0 精华:0 注册:2008/9/1 15:41:00
  发帖心情 Post By:2011/4/28 16:14:00 [只看该作者]

非常感谢!!!


 回到顶部