Foxtable(狐表)用户栏目专家坐堂 → 求助 多表取组合值问题


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

主题:求助 多表取组合值问题

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


加好友 发短信
等级:婴狐 帖子:40 积分:342 威望:0 精华:0 注册:2015/5/8 15:05:00
求助 多表取组合值问题  发帖心情 Post By:2016/4/21 17:27:00 [只看该作者]

各位专家:

     我初学,碰到一问题:某表须从其他三个表中提取不同行列的参数用于计算。

问题1.我的这种计算方式还能简化吗?

      2.这种计算需要前面几列的数据支持,这几列数据能否自动从其他表中提取?

      这是个组合取值问题,因为每家公司的一个投标价对应了三个基础参数。

      我在 DataColChanged 编了些,实在不成功。还得请高手指教几下。

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


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/21 17:38:00 [只看该作者]

1、请说明哪个表哪些列要做什么操作,最后得到什么效果;

 

2、请说明运算的规则。


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


加好友 发短信
等级:婴狐 帖子:40 积分:342 威望:0 精华:0 注册:2015/5/8 15:05:00
  发帖心情 Post By:2016/4/22 8:10:00 [只看该作者]

就是商务得分表S1的计算及项目编号、单位名称、随机值K1n的自动组合填充。运算公式已在DataColChanged里,谢谢大红袍

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


加好友 发短信
等级:婴狐 帖子:40 积分:342 威望:0 精华:0 注册:2015/5/8 15:05:00
  发帖心情 Post By:2016/4/22 8:15:00 [只看该作者]

运算要求为:

     YB=0   S1=0

     YB=PJ  S1=Sx

     YB>PJ  S1=Sx-Cjk*(YB-PJ)*100/PJ

     YB<PJ  S1=Sx-Djk*(PJ-YB)*100/PJ


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


加好友 发短信
等级:婴狐 帖子:40 积分:342 威望:0 精华:0 注册:2015/5/8 15:05:00
  发帖心情 Post By:2016/4/22 8:26:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:商务得分表.png
图片点击可在新窗口打开查看
希望得到的结果

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/22 9:44:00 [只看该作者]

Dim dt As DataTable = DataTables("SWDF")
Dim dt1 As DataTable = DataTables("Zb")
Dim dt2 As DataTable = DataTables("DWBJ")
Dim dt3 As DataTable = DataTables("PF1")
dt.DataRows.Clear
For Each dr As DataRow In dt2.Select("XMBH Is not null")
    Dim fdr1 As DataRow = dt1.Find("XMBH = '" & dr("XMBH") & "'")
    If fdr1 IsNot Nothing Then
        Dim YB As Double = dr("YB")
        For Each cdr As DataRow In dt3.Select("XMBH = '" & dr("XMBH") & "'")
            Dim ndr As DataRow = dt.AddNew
            ndr("XMBH") = dr("XMBH")
            ndr("dw") = dr("dw")
            ndr("K1n") = cdr("k1n")
            If yb = 0 Then
                ndr("S1") = 0
            ElseIf dr("YB") = cdr("PJ") Then
                ndr("S1") = fdr1("Sx")
            ElseIf dr("YB") > cdr("PJ") Then
                ndr("S1") = fdr1("Sx")-fdr1("Cjk")*(YB-cdr("PJ"))*100/cdr("PJ")
            ElseIf dr("YB") < cdr("PJ") Then
                ndr("S1") = fdr1("Sx")-fdr1("Djk")*(cdr("PJ")-YB)*100/cdr("PJ")
            End If
        Next
    End If
Next

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


加好友 发短信
等级:婴狐 帖子:40 积分:342 威望:0 精华:0 注册:2015/5/8 15:05:00
  发帖心情 Post By:2016/4/22 11:15:00 [只看该作者]

大红袍先生:将您的代码替代后,出现闪屏2分钟,无结果。

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/4/22 11:16:00 [只看该作者]

单独做一个按钮运行6楼的代码,我测试没问题


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


加好友 发短信
等级:婴狐 帖子:40 积分:342 威望:0 精华:0 注册:2015/5/8 15:05:00
  发帖心情 Post By:2016/4/22 13:05:00 [只看该作者]

是的,做按钮运行,没问题。谢谢您

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


加好友 发短信
等级:婴狐 帖子:40 积分:342 威望:0 精华:0 注册:2015/5/8 15:05:00
  发帖心情 Post By:2016/4/22 16:07:00 [只看该作者]

奇怪,该代码在命令窗口执行也行的。但为什么在表事件里就不能运行呢?


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