以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 请教这个形式的表格如何生成 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=80280) |
-- 作者:李睿涵 -- 发布时间:2016/1/19 21:59:00 -- 请教这个形式的表格如何生成 如图示 |
-- 作者:大红袍 -- 发布时间:2016/1/19 22:20:00 -- Dim dtb As New DataTableBuilder("统计") dtb.AddDef("科目", Gettype(String), 16) dtb.AddDef("预算", Gettype(Double)) Dim prds As List(of String) = DataTables("负责人").GetValues("负责人") Dim str As String = "" For Each prd As String In prds dtb.AddDef(prd, Gettype(Double)) str &= "isnull(" & prd & ",0)+" Next dtb.AddDef("累计", Gettype(Double), str.trim("+")) dtb.Build() Dim t As Table = Tables("统计") For Each km As String In DataTables("科目").GetValues("科目") Dim nr As Row = t.AddNew nr("科目") = km Next For Each prd As String In prds t.cols(prd).GrandTotal = True Next t.cols("预算").GrandTotal = True t.cols("累计").GrandTotal = True t.GrandTotal = True |
-- 作者:李睿涵 -- 发布时间:2016/1/20 10:35:00 -- 测试好用,谢谢! 请教:str &= "isnull(" & prd & ",0)+" 红色部分是啥意思? 哪里有资料可以参考? |
-- 作者:大红袍 -- 发布时间:2016/1/20 10:56:00 -- 这里是为了合成一个公式。
http://www.foxtable.com/help/topics/0602.htm
|
-- 作者:wyz20130512 -- 发布时间:2016/1/20 11:03:00 -- 回复:(李睿涵)测试好用,谢谢!请教:str &=... 这是获取表达式字符串的意思,isnull(张三,0)+isnull(李四,0)+... 最后通过str.trim("+")去掉最后的一“+”
|
-- 作者:李睿涵 -- 发布时间:2016/1/20 12:36:00 -- 原来如此,我以为是正则表达式 谢谢各位 |
-- 作者:李睿涵 -- 发布时间:2016/3/16 20:19:00 -- Dim dtb As New DataTableBuilder("统计")
再问一下,若科目里有特殊字符(- *) ,红色代码合成出来的结果是: isnull(川藏线,0)+isnull(云贵线,0)+isnull(北京-深圳*广州,0) 整段代码运行时,会报错:找不到[北京]列 应该是把横杠当成了减号,估计后面的星号也会当成乘号 而报错
请教:如何让[北京-深圳*广州] 能当成一个字符串处理,而不是运算符号
|
-- 作者:大红袍 -- 发布时间:2016/3/16 20:24:00 -- str &= "isnull([" & prd & "],0)+" |
-- 作者:李睿涵 -- 发布时间:2016/3/16 20:31:00 -- 以下是引用大红袍在2016/3/16 20:24:00的发言:
str &= "isnull([" & prd & "],0)+" 神回复,谢谢! |