Foxtable(狐表)用户栏目专家坐堂 → 循环语句的学习


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

主题:循环语句的学习

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


加好友 发短信
等级:三尾狐 帖子:651 积分:6614 威望:0 精华:0 注册:2016/12/27 21:05:00
循环语句的学习  发帖心情 Post By:2020/2/26 20:34:00 [只看该作者]

我想实现一个合同资金预测的功能,请帮编段代码,让我学习一下循环语句的使用:样表及要求见附件
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:基表.xlsx

请指教,谢谢!!

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


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

一个典型的循环:
FOR each r as row in tables("表A").ROWS
tables("表B").Addnew
tables("表B").current("工程合同编号")=r("工程合同编号")
tables("表B").current("工程类别")=r("工程类别")
NEXT

 



 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110648 积分:563148 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/27 9:57:00 [只看该作者]

2楼的代码应该这样用,尽量不要使用current,有时候不经意的其它事件可能会导致选择的行变化,current行就不是原来的行了

dim r as row
FOR each r as row in tables("表A").ROWS
r = tables("表B").Addnew
r("工程合同编号")=r("工程合同编号")
r("工程类别")=r("工程类别")
NEXT

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


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

又学到了一招 图片点击可在新窗口打开查看,谢谢 有点蓝大师

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


加好友 发短信
等级:三尾狐 帖子:651 积分:6614 威望:0 精华:0 注册:2016/12/27 21:05:00
  发帖心情 Post By:2020/2/27 22:35:00 [只看该作者]

应结工程款日期和应结金额两列的数据怎么得到呢?请指教,谢谢!!


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


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

应结工程款日期你没给呀,所以应结金额也没法算

 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110648 积分:563148 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/28 9:55:00 [只看该作者]

请详细描述一下计算规则,以 HT0001举例说明一下,B表应该存储什么结果?

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


加好友 发短信
等级:三尾狐 帖子:651 积分:6614 威望:0 精华:0 注册:2016/12/27 21:05:00
  发帖心情 Post By:2020/2/28 14:35:00 [只看该作者]

根据合同明细表生成资金预算表,具体要求:在资金预算表的右侧
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:基础表.xlsx


 回到顶部
帅哥,在线噢!
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110648 积分:563148 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/28 16:39:00 [只看该作者]

Dim dt As DataTable = DataTables("资金预算表")
dt.StopRedraw
Dim d As Date = Date.Today
Dim nr As DataRow
For Each dr As DataRow In DataTables("合同明细表").DataRows
    Dim sd As Date = dr("履约开始日期")
    Dim i As Integer = 1
    Do While i<=dr("合同期")
        sd = sd.AddYears(1)
        If sd >= d
            nr = dt.AddNew
            nr("工程合同编号") = dr("工程合同编号")
            nr("应结工程款日期") = sd
            nr("应结金额") = dr("合同金额") * dr("第" & i & "年")
        End If
        i += 1
    Loop
Next
dt.ResumeRedraw

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


加好友 发短信
等级:三尾狐 帖子:651 积分:6614 威望:0 精华:0 注册:2016/12/27 21:05:00
  发帖心情 Post By:2020/3/4 8:57:00 [只看该作者]

我上例中对资金需求理解有误,重新说明如下:
1、工程期限不等于支付期限;(“工程主表”中)
2、支付依据:镇级应付价(“工程主表”中)
3、支付工程款常出现:有时滞后支付,有时不按合同约定比例支付;(见“支付明细表”)
我想根据“工程主表”中的各年支付比例和“支付明细表”中各年的实际支付金额,生成一个“资金预算表”:
要求:
1、未到期的逐年计算“需付资金”
2、已到期中,未支付完毕的资金列入本年度的“需付资金”
请指教,谢谢!!
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:工程管理.rar




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