以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 分组统计代码运行中的几个问题,请指教。 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=48788) |
-- 作者:ztmdnzc -- 发布时间:2014/4/5 1:05:00 -- 分组统计代码运行中的几个问题,请指教。 以下代码运行后能够得到正确的结果,遍历生成的datatable,列名称和列标题也正确。 代码一: g.Groups.AddDef("报告期",DateGroupEnum.None,"报告期") g.Totals.AddDef("金额",AggregateEnum.Sum,"金额")
当我想用变量时,代码如下,得到的结果是报告期显示的是月,而不是2014-04-04,单位名称和金额正确,最大值的结果却和金额相同。 遍历生成的datatable,列标题报告期对应的列名称是0,单位名称的列标题和列名称一致,列标题金额对应的列名称为2,列标题最大值对应的列名称为6。 代码二: Dim ga,gb,gc, ta,tb,tc,td As String 当我将代码二中的DateGroupEnum.None、AggregateEnum.Sum、AggregateEnum.Max前后各加上一个"后,运行结果和代码二的运行结果一致, 但遍历datatable的结果却是:列标题报告期的列名称是DateGroupEnum.None,单位名称的列标题和列名称一致,列标题金额的列名称为AggregateEnum.Sum,列标题最大值的列名称为AggregateEnum.Max。三个枚举值为列名称的原因是代码将其作为重命名列名称运行。
请教大侠: 1.AddDef()括号内的内容能否使用变量引用?若能使用,如何正确设置变量类型?尤其是DateGroupEnum.None、AggregateEnum.Sum等 枚举值如何设置引用的变量类型。 2.使用变量(代码二、三)为何会导致产生与未使用变量(代码一)不一致的结果和datatable结构的不同?
说明:大家可以用任何表做测试,不必拘泥于上述代码。 |
-- 作者:lsy -- 发布时间:2014/4/5 6:20:00 -- Dim gb As Object = DateGroupEnum.None |
-- 作者:有点甜 -- 发布时间:2014/4/7 14:46:00 -- 枚举类型,就是一个数字,你定义成integer也成
msgbox(AggregateEnum.Sum) |
-- 作者:ztmdnzc -- 发布时间:2014/4/11 22:07:00 -- 谢谢老师。 |
-- 作者:lsy -- 发布时间:2014/4/12 8:35:00 -- 数字,有时不灵,在Font定义中就不行。 |