以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  动态修改了列标题后如何将同一列标题归在一起?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=42149)

--  作者:blackzhu
--  发布时间:2013/11/5 13:36:00
--  动态修改了列标题后如何将同一列标题归在一起?
For Each cl As DataCol In DataTables("统计表1").DataCols
        Case "款号","品名","分配到组当日订单任务(件)","当日人数","每人每日定额(元)"
            With DataTables("统计表1")
                .DataCols(cl.Name).Caption = "1.劳动生产任务分配数据_" & cl.Caption
                .BuildHeader()
            End With
        Case "当日产量(件)","单价(元)","产值(元)","人均产值(元)","超欠%","本月累计完成产值(元)","本月累计完成百分比%","累计完成数量(件)","当日完成任务的人数","当日完成任务的人数百分比%","当日实际产值低于60%的人数"
            With DataTables("统计表1")
                .DataCols(cl.Name).Caption = "2.劳动任务完成情况_" & cl.Caption
                .BuildHeader()
            End With
        Case "当日送检数量(件)","合格数量(件)","不合格数量(件)","合格率(%)","质量合格率≤70%的人数"
            With DataTables("统计表1")
                .DataCols(cl.Name).Caption = "3.质量控制统计_" & cl.Caption
                .BuildHeader()
            End With
    End Select
Next

 如何按照列标题归在在一起?

[此贴子已经被作者于2013-11-5 13:36:10编辑过]

--  作者:Bin
--  发布时间:2013/11/5 14:08:00
--  
声明3个集合,分别添加3个Case里面的列名, 然后再循环移动到一起即可.
--  作者:狐狸爸爸
--  发布时间:2013/11/5 14:10:00
--  

老朱,题外话,你代码中出现三次buildheader没有意义,最后统一执行一次buildheader就行。

不需要设置一列的标题,就执行一次buildheader.

全部设置完成,再BuildHeader

[此贴子已经被作者于2013-11-5 14:11:00编辑过]

--  作者:blackzhu
--  发布时间:2013/11/5 14:34:00
--  
  明白,我设置一次buildheader.  这个我是在命令窗口测试用的.
--  作者:blackzhu
--  发布时间:2013/11/5 15:13:00
--  
能否写个代码?
--  作者:Bin
--  发布时间:2013/11/5 15:17:00
--  
以下是引用blackzhu在2013-11-5 15:13:00的发言:
能否写个代码?

给了思路,如果不会要代码的话.好歹上个例子吧.
--  作者:blackzhu
--  发布时间:2013/11/5 15:21:00
--  
就用这个例子:

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:多统计.foxdb





--  作者:狐狸爸爸
--  发布时间:2013/11/5 15:44:00
--  

命令窗口执行:

 

Dim nms1() As String = {"第一列","第四列","第七列"}
Dim nms2() As String = {"第二列","第五列","第八列"}
Dim nms3() As String = {"第三列","第六列","第九列","第十列"}
Dim ps As Integer = 0
For Each nm As String In nms1
    DataTables("表A").DataCols(nm).Caption = "第一组_" & nm
    Tables("表A").Cols(nm).Move(ps)
    ps = ps + 1
Next
For Each nm As String In nms2
    DataTables("表A").DataCols(nm).Caption = "第二组_" & nm
    Tables("表A").Cols(nm).Move(ps)
    ps = ps + 1
Next
For Each nm As String In nms3
    DataTables("表A").DataCols(nm).Caption = "第三组_" & nm
    Tables("表A").Cols(nm).Move(ps)
    ps = ps + 1
Next
DataTables("表A").BuildHeader

[此贴子已经被作者于2013-11-5 15:45:38编辑过]

--  作者:Bin
--  发布时间:2013/11/5 15:49:00
--  
.
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:多统计 (1).foxdb