Foxtable(狐表)用户栏目专家坐堂 → [求助]垂直表和水平表的转换


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

主题:[求助]垂直表和水平表的转换

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/3/7 22:56:00 [显示全部帖子]

直接做交叉统计即可:http://www.foxtable.com/webhelp/scr/0165.htm

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/3/7 23:07:00 [显示全部帖子]


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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/3/8 8:49:00 [显示全部帖子]

Dim dtb As New DataTableBuilder("表B")
dtb.AddDef("日期",Gettype(Date))
dtb.AddDef("客户",Gettype(String),10)
For Each v As String In DataTables("订单").GetValues("产品")
    dtb.AddDef(v, Gettype(Double))
Next
dtb.Build()
For Each v As String() In DataTables("订单").GetValues("日期|客户")
    Dim dr1 As DataRow = DataTables("表B").AddNew()
    dr1("日期") = v(0)
    dr1("客户") = v(1)
    Dim filter As String = "日期 = '" & v(0) & "' And 客户 = '" & v(1) & "'"
    For Each v1 As String In DataTables("订单").GetValues("产品",filter)
        dr1(v1) = DataTables("订单").Compute("Sum(数量)",filter & " and 产品='" & v1 & "'")
    Next
Next
MainTable = Tables("表B")

 回到顶部