以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]生成固定统计表 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=91347) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-- 作者:zcgmxf -- 发布时间:2016/10/8 22:22:00 -- [求助]生成固定统计表 老师,例子中 暴露分级 有 Ⅰ、Ⅱ、Ⅲ、Ⅳ 四个选项,有时可能全是 其中某一个选项, Dim g As New CrossTableBuilder("统计表2", DataTables("鼎城区狂犬病暴露门诊登记表")) 如何能生成 如汇总表那样的固定的统计表,或者将各种可能的统计结果导出到像汇总表那样固定格式的excel 表。排序不能乱。能力有限,花了两天时间搞不定,请指点,谢谢!
[此贴子已经被作者于2016/10/9 8:09:33编辑过]
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-- 作者:zcgmxf -- 发布时间:2016/10/9 8:08:00 -- 哪位大师帮忙指点指点,谢谢了! |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-- 作者:zcgmxf -- 发布时间:2016/10/9 9:17:00 -- 各位大师,是不是问题很简单啊?怎么没人理我呢? |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-- 作者:有点蓝 -- 发布时间:2016/10/9 10:08:00 -- Dim g As New CrossTableBuilder("统计表2", DataTables("鼎城区狂犬病暴露门诊登记表")) g.HGroups.AddDef("县区") g.VGroups.AddDef("暴露分级", "暴露分级_{0}") \'统计生成的列根据输入的值不同 是动态的,有时可能只有一列,有时可能有四列. g.Totals.AddDef("暴露分级", AggregateEnum.Count, "暴露分级") g.Build() MainTable = Tables("统计表2") Dim dict As new Dictionary(of String,Integer) dict.Add("Ⅰ",-1) dict.Add("Ⅱ",-1) dict.Add("Ⅲ",-1) dict.Add("Ⅳ",-1) For Each c As Col In Tables("统计表2").Cols If c.Name.StartsWith("暴露分级_") Then dict(c.Caption.Split("_")(1)) = c.Index End If Next For Each key As String In dict.Keys If dict(key) = -1 Then DataTables("统计表2").DataCols.Add("暴露分级_" & key,Gettype(Integer)) End If Next Dim idx As Integer = 1 For Each c As Col In Tables("统计表2").Cols Select Case c.Caption Case "暴露分级_Ⅰ" c.Move(1) Case "暴露分级_Ⅱ" c.Move(2) Case "暴露分级_Ⅲ" c.Move(3) Case "暴露分级_Ⅳ" c.Move(4) End Select Next
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-- 作者:zcgmxf -- 发布时间:2016/10/9 22:31:00 -- 有点蓝老师,这个汇总表是比较难,汇总表格式在例子里。差不多了,但统计数据时还有点问题,请您看看。谢谢
[此贴子已经被作者于2016/10/10 10:14:12编辑过]
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-- 作者:有点蓝 -- 发布时间:2016/10/10 9:43:00 -- 列名的问题,先把统计表生成到主表,自己观察正确的列名。在命令窗口写代码,准确后代码再搬到统计窗口 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-- 作者:zcgmxf -- 发布时间:2016/10/10 10:32:00 -- 老师,现在不是列名错了,而是提示 已经存在,主要有两个格式的 伤人动物_名称_ 伤人动物_类别_. 随着表内输入值的变化可能出现不同的提示,但是以前面的为主。请您看看。谢谢!
[此贴子已经被作者于2016/10/10 10:36:10编辑过]
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-- 作者:有点蓝 -- 发布时间:2016/10/10 11:27:00 -- 就是列名的问题 ...... Dim dict1 As new Dictionary(of String, Integer) dict1.Add("1",-1) dict1.Add("2",-1) dict1.Add("3",-1) dict1.Add("4",-1) For Each c As Col In Tables("统计表").Cols If c.Name.StartsWith("伤人动物_名称_") Then dict1(c.Caption.Split("_")(2)) = c.Index \'注意列名有2个“-” End If Next |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-- 作者:zcgmxf -- 发布时间:2016/10/10 11:45:00 -- 多谢多谢! |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-- 作者:zcgmxf -- 发布时间:2016/10/10 19:38:00 -- 有点蓝老师好!这个汇总表我花了几天时间,您也费了心思,但还是不行。反复测试中发现一个问题就是下面的代码有空格和没有空格执行结果不同。 DataTables("统计表2").DataCols.Add("暴露分级_ " & key,Gettype(Integer)) 。在表中输入同一个值时,很明显。例子中我用了三列,请您看看什么原因。
老师,是不是 1 2 3 4 应该是 字符型时 代码 当做了 数字型了? [此贴子已经被作者于2016/10/10 22:33:32编辑过]
|