以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 老大,有个问题实在搞不定,帮忙看看 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=15358) |
||||||||
-- 作者:唐尸三摆手 -- 发布时间:2011/12/22 10:09:00 -- 老大,有个问题实在搞不定,帮忙看看
要求在xls文件中,希望实现的结果是,前序的数量必须足够后序6天的数量时才会转下去,否则就不转,帮我看下思路怎么搞 |
||||||||
-- 作者:狐狸爸爸 -- 发布时间:2011/12/22 10:22:00 -- 看起来有点复杂,我抽空帮你看看吧。 |
||||||||
-- 作者:don -- 发布时间:2011/12/22 17:14:00 -- 俺也來截糊:
這裡修正一下: ......... For i = 0 To na-1 nr = dt1.AddNew nr("日期") = dr("日期").adddays(i+1) nr("顺序") = "B" nr("数量") = iif(i<na-1 ,nb,n-p-i*nb) Next dt1.save ............
[此贴子已经被作者于2011-12-22 20:41:43编辑过]
|
||||||||
-- 作者:狐狸爸爸 -- 发布时间:2011/12/22 17:19:00 -- |
||||||||
-- 作者:gdlgh -- 发布时间:2011/12/22 20:58:00 -- 本想再截老总的糊的,dom兄上家先手占糊了,那我只能下次占上家吧!!哈。。。 呵。思路差不多相同! 真是好怀念已前易表那时光!!!
|
||||||||
-- 作者:狐狸爸爸 -- 发布时间:2011/12/22 21:40:00 -- 呵呵,两位是顶级高手,欢迎截糊。
|
||||||||
-- 作者:gdlgh -- 发布时间:2011/12/22 22:10:00 -- 顶级那个帽就不敢带了!高手就粘了少少边!!虚荣一下,嘿 其实多做些练习题是好事,帮人的同时也是在提高自己!! 可惜生活是现实的,为生活奔波无时间呀!业余爱好一下,呵。。。
|
||||||||
-- 作者:don -- 发布时间:2011/12/22 22:18:00 -- 還有個思路:想法合成SQL: |
||||||||
-- 作者:gdlgh -- 发布时间:2011/12/22 22:41:00 -- 在狐表里执行SQL估计难实现! 需判断来生成数据,靠拼SQL字符串,那不是又回到易表时代了!不现实! 若在SQL Server里写函数应行的!!
|
||||||||
-- 作者:gdlgh -- 发布时间:2011/12/22 22:54:00 -- 呵。。交流下!刚做完才发现被截糊了! Dim nr As DataRow Dim tbA As DataTable=DataTables("表A") Dim i,sum,yuInt As Integer Dim dateInt As Date DataTables("表A").DeleteFor("顺序 = \'B\'") Dim drs As New List(of DataRow) drs = tbA.Select("[顺序]=\'A\'","日期") For Each r As DataRow In drs sum += r("数量") If sum>=51*6 Then yuInt +=sum-51*6 sum = 0 dateInt = r("日期") For i=1 To 6 nr = tbA.AddNew() nr("日期") = dateInt.adddays(i) nr("顺序") = "B" nr("数量") = 51 Next End If Next For i=1 To (yuInt+sum)\\51 dateInt = dateInt.adddays(i+6) nr = tbA.AddNew() nr("日期") = dateInt nr("顺序") = "B" nr("数量") = 51 Next nr = tbA.AddNew() nr("日期") = dateInt.adddays(1) nr("顺序") = "B" nr("数量") = (yuInt+sum) Mod 51 DataTables("表A").save Dim b As New SQLCrossTableBuilder("统计表","表A") b.HGroups.AddDef("顺序","顺序") b.VGroups.AddDef("日期",DateGroupEnum.day) b.Totals.AddDef("数量") b.HorizontalTotal= True b.Build MainTable =Tables("统计表") Tables("统计表").AutoSizeCols |