以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  求助 汇总表  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=70518)

--  作者:青岛hhh
--  发布时间:2015/6/23 17:40:00
--  求助 汇总表

做了个"汇总"表

If MainTable.Name = "汇总" Then
     Dim i1 As Short
    For i1 = 3 To 30 Step 1
         Dim n1 As Short=Tables("数据1").Rows.Count                              
        Tables("汇总").Position =i1-3
        Tables("汇总").Current("指标") =Tables("数据1").Cols(i1).Name
        Tables("汇总").Current("条件") =Tables("数据1").Cols(i1).Caption 
    Next
       DataTables("汇总").DataCols("指标").RaiseDataColChanged()

End If

 

后想把"数据2","数据,3"也增加到"汇总"表,不知怎样改代码?

请老师帮忙!



--  作者:大红袍
--  发布时间:2015/6/23 17:41:00
--  
 上传具体例子。
--  作者:青岛hhh
--  发布时间:2015/6/25 17:23:00
--  

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1_201506251606.zip

 

1,统计"数据1”,"基数1"(两表结构相同),"数据2","基数2"(两表结构相同)小于0,0-100,100-1000,大于1000各档数据的数量

2,汇总表"指标项"列为"指数1"-6(数据1,数据2的列名)

           "大于0"列为数据1,数据2(0-100,100-1000,大于1000)/各档数据的数量和(大于0占总数比例)

           "大于100"列为数据1,数据2(100-1000,大于1000)/各档数据的数量和(大于100占总数比例)

           "大于1000"列为数据1,数据2(大于1000)/各档数据的数量和(大于1000占总数比例)

           " 净大于0"列为(数据1,数据2大于0占总数比例)-(基数1,基数2大于0占总数比例)

           " 净大于100"列为(数据1,数据2大于0占总数比例)-(基数1,基数2大于100占总数比例)                                                                    

           " 净大于1000"列为(数据1,数据2大于0占总数比例)- (基数1,基数2大于1000占总数比例)


--  作者:大红袍
--  发布时间:2015/6/25 17:47:00
--  
 没看懂你什么意思,贴出你之前写的代码。
[此贴子已经被作者于2015/6/25 17:47:04编辑过]

--  作者:大红袍
--  发布时间:2015/6/25 18:08:00
--  

Dim tbs() As String = {"数据1", "数据2"}
Dim tbs_js() As String = {"基数1", "基数2"}
Dim cs1() As String = {"指标1", "指标2", "指标3"}
Dim cs2() As String = {"指标4", "指标5", "指标6"}
Dim ls As new List(Of String())
ls.Add(cs1)
ls.add(cs2)

DataTables("汇总").DataRows.Clear
For i As Integer = 0 To tbs.Length - 1
    Dim cs As String() = ls(i)
    For j As Integer = 0 To cs.Length - 1
        Dim fdr = DataTables("汇总").AddNew
        fdr("指标项") = cs(j)
       
        Dim All As Double = Tables(tbs(i)).Compute("count(" & cs(j) & ")")
        Dim c0 As Double = Tables(tbs(i)).Compute("count(" & cs(j) & ")", cs(j) & " >= 0")
        Dim c100 As Double = Tables(tbs(i)).Compute("count(" & cs(j) & ")", cs(j) & " >= 100")
        Dim c1000 As Double = Tables(tbs(i)).Compute("count(" & cs(j) & ")", cs(j) & " >= 1000")
        fdr("大于0") = c0 / All
        fdr("大于100") = c100 / All
        fdr("大于1000") = c1000 / All

        Dim jsAll As Double = Tables(tbs_js(i)).Compute("count(" & cs(j) & ")")
        Dim jsc0 As Double = Tables(tbs_js(i)).Compute("count(" & cs(j) & ")", cs(j) & " >= 0")
        Dim jsc100 As Double = Tables(tbs_js(i)).Compute("count(" & cs(j) & ")", cs(j) & " >= 100")
        Dim jsc1000 As Double = Tables(tbs_js(i)).Compute("count(" & cs(j) & ")", cs(j) & " >= 1000")

        fdr("净大于0") = c0 / all - jsc0 / all
        fdr("净大于100") = c100 / all - jsc100 / all
        fdr("净大于1000") = c1000 / all - jsc1000 / all
    Next
Next


--  作者:青岛hhh
--  发布时间:2015/6/26 11:30:00
--  
索引超出范围。必须为非负值并小于集合大小。
参数名: index

--  作者:大红袍
--  发布时间:2015/6/26 11:31:00
--  
5楼代码没有问题。
--  作者:青岛hhh
--  发布时间:2015/6/26 11:46:00
--  

通过了,感谢大红袍老师图片点击可在新窗口打开查看


--  作者:青岛hhh
--  发布时间:2015/7/4 19:32:00
--  

请教大红袍老师:

 想在"汇总"表的"条件"列增加"指标1-6"的列标题(列标题与列名不同)如何修改代码?


--  作者:大红袍
--  发布时间:2015/7/5 9:33:00
--  

 参考

 

http://www.foxtable.com/help/topics/1275.htm