Foxtable(狐表)用户栏目专家坐堂 → [求教]代码修改-行转列


  共有1850人关注过本帖树形打印复制链接

主题:[求教]代码修改-行转列

帅哥哟,离线,有人找我吗?
hcfbehero
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:109 积分:1074 威望:0 精华:0 注册:2019/1/16 22:56:00
[求教]代码修改-行转列  发帖心情 Post By:2019/6/21 15:00:00 [只看该作者]

版主,我分组统计了图一,然后用行列转换代码生成图二,但是那个泵工的姓名(例如:杨坤怀,熊寿春,等),不知道怎么提到图二的第二列中,请帮忙看下代码,
图一

图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20190621145225.png
图片点击可在新窗口打开查看
图二

图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20190621145516.png
图片点击可在新窗口打开查看
代码如下:
Dim g As New GroupTableBuilder("统计表2", DataTables("泵人档案"))
g.Groups.AddDef("泵工基础工资_年月","年月")
g.Totals.AddDef("泵工基础工资_杨坤怀")
g.Totals.AddDef("泵工基础工资_熊寿春")
g.Totals.AddDef("泵工基础工资_袁文杰")
g.Totals.AddDef("泵工基础工资_田进军")
g.Totals.AddDef("泵工基础工资_董泽明")
g.Totals.AddDef("泵工基础工资_许永明")
g.Totals.AddDef("泵工基础工资_董培")
g.Totals.AddDef("泵工基础工资_许银朋")
g.Totals.AddDef("泵工基础工资_杨永照")
g.Totals.AddDef("泵工基础工资_张建聪")
g.Totals.AddDef("泵工基础工资_张磊")
g.Totals.AddDef("泵工基础工资_任伟君")
g.Totals.AddDef("泵工基础工资_李建伟")
g.Totals.AddDef("泵工基础工资_杨昆奇")
g.Totals.AddDef("泵工基础工资_毕文涛")
g.Totals.AddDef("泵工基础工资_张进标")
g.Totals.AddDef("泵工基础工资_杨士民")
g.Totals.AddDef("泵工基础工资_李旋")
g.Totals.AddDef("泵工基础工资_杨建荣")
g.Totals.AddDef("泵工基础工资_毕忠诚")
g.Totals.AddDef("泵工基础工资_李正栋")
g.Filter = "[泵工基础工资_年月] = 201905"
Tables("泵送明细_Table8").DataSource = g.BuildDataSource()

DataTables("泵送明细_Table6").DataRows.Clear()
For Each adr As DataRow In DataTables("泵送明细_Table8").DataRows
    If adr.IsNull("年月") = False Then
        For Each adc As DataCol In DataTables("泵送明细_Table8").DataCols
            If adc.Name.StartsWith("泵工基础工资") AndAlso adr.IsNull(adc.Name) = False Then
                Dim bdr As DataRow = DataTables("泵送明细_Table6").AddNew()
                bdr("第一列") = adr("年月")
                'bdr("第二列") = adr("")
                bdr("第三列") = adr(adc.Name)
            End If
        Next
    End If
Next
MainTable = Tables("泵送明细_Table6")

With DataTables("泵送明细_Table6")
    .DataCols("第一列").Caption = "年月"
    .DataCols("第三列").Caption = "基础工资"
    .BuildHeader()
End With


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/6/21 15:36:00 [只看该作者]

For Each adr As DataRow In DataTables("泵送明细_Table8").DataRows
    If adr.IsNull("年月") = False Then
        For Each adc As DataCol In DataTables("泵送明细_Table8").DataCols
            If adc.Name.StartsWith("泵工基础工资") AndAlso adr.IsNull(adc.Name) = False Then
                Dim bdr As DataRow = DataTables("泵送明细_Table6").AddNew()
                bdr("第一列") = adr("年月")
                bdr("第二列") = adc.Name.split("_")(1)
                bdr("第三列") = adr(adc.Name)
            End If
        Next
    End If
Next

 回到顶部
帅哥哟,离线,有人找我吗?
hcfbehero
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:109 积分:1074 威望:0 精华:0 注册:2019/1/16 22:56:00
  发帖心情 Post By:2019/6/21 16:27:00 [只看该作者]

谢谢,这个问题解决了。

 回到顶部