Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共8 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

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

1楼
hty4000 发表于:2011/4/27 12:52:00

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

 

 

 


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

 

  

 


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

 

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

2楼
mr725 发表于:2011/4/27 13:07:00
合计到哪? 第一张还是第二张表?? 是用Excel做吗??
3楼
hty4000 发表于:2011/4/27 13:10:00
合计到另外一张表上,将这两张表的数据导入到foxtable中,这样要快些,数据量有点大
[此贴子已经被作者于2011-4-27 13:11:55编辑过]
4楼
mr725 发表于:2011/4/27 13:17:00
这个简单,给个例子帮你搞定。(做例子麻烦呀)
5楼
hty4000 发表于:2011/4/27 13:21:00

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

[此贴子已经被作者于2011-4-27 13:21:32编辑过]
6楼
mr725 发表于: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

7楼
mr725 发表于:2011/4/27 13:46:00
注意: 将参与计算的列都给为数字型···
8楼
hty4000 发表于:2011/4/28 16:14:00

非常感谢!!!

共8 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02734 s, 3 queries.