Foxtable(狐表)用户栏目专家坐堂 → 关于Excel报表


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

主题:关于Excel报表

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/11/28 17:14:00 [只看该作者]

瞎猜给你写了一个

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20131128171218.png
图片点击可在新窗口打开查看
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.table




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


加好友 发短信 一级勋章
等级:狐仙 帖子:9875 积分:57584 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2013/11/28 17:29:00 [只看该作者]

'Select  {任务单}.任务单编号,任务名称,{零部件}.零部件编号,{零部件}.零部件名称,加工内容,计划加工日期 From ({任务单} Inner JOIN {零部件} ON {零部件}.[任务单编号] = {任务单}.[任务单编号]) Inner JOIN {加工计划} ON {加工计划}.[零部件编号] = {零部件}.[零部件编号]
Dim dtb1 As New DataTableBuilder("统计表1")
dtb1.AddDef("任务单编号", Gettype(String), 32)
dtb1.AddDef("任务名称", Gettype(String), 32)
dtb1.AddDef("零部件编号", Gettype(String), 32)
dtb1.AddDef("零部件名称", Gettype(String), 32)
dtb1.Build()


Dim dtb As New DataTableBuilder("统计")
dtb.AddDef("产品", Gettype(String), 32)
dtb.Build()
MainTable= Tables("统计")
DataTables("统计").fill("Select  {任务单}.任务单编号,任务名称,{零部件}.零部件编号,{零部件}.零部件名称,加工内容,计划加工日期 From ({任务单} Inner JOIN {零部件} ON {零部件}.[任务单编号] = {任务单}.[任务单编号]) Inner JOIN {加工计划} ON {加工计划}.[零部件编号] = {零部件}.[零部件编号]","",True)

Dim f As New Filler
f.SourceTable = DataTables("统计") '指定数据来源
f.SourceCols = "任务单编号,任务名称,零部件编号,零部件名称" '指定数据来源列
f.DataTable = DataTables("统计表1") '指定数据接收表
f.DataCols =  "任务单编号,任务名称,零部件编号,零部件名称" '指定数据来源列
f.Fill() '填充数据

Dim Vals As List(Of String) = DataTables("统计").GetUniqueValues("[计划加工日期] Is Not Null","计划加工日期")
For Each Val As String In Vals
    Val = Val.Replace(" 0:00:00","")
    If DataTables("统计表1").DataCols.Contains(Val) = False Then
        DataTables("统计表1").DataCols.Add(Val, Gettype(String), 70)
    End If
Next
Dim drs As List(of DataRow)
For Each nr As DataRow In DataTables("统计表1").DataRows
    For Each val As String In Vals
        Val = Val.Replace(" 0:00:00","")
        drs = DataTables("统计").Select("任务单编号 = '" & nr("任务单编号") & "' And 任务名称 = '" & nr("任务名称") & "' And 零部件编号 = '" & nr("零部件编号") & "' And 零部件名称='" & nr("零部件名称") & "' And 计划加工日期 = #" & Val & "#")
        nr(val) = ""
        For Each dr As DataRow In drs
            nr(val) = nr(val) & dr("加工内容") & " "
        Next
        nr(val) = nr(val).Trim(",")
    Next
Next


命令窗口 测试下 有了这个再导出就可以了

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


加好友 发短信
等级:二尾狐 帖子:564 积分:4692 威望:0 精华:0 注册:2013/2/18 17:46:00
  发帖心情 Post By:2013/11/28 17:31:00 [只看该作者]

谢谢斑竹,是我的需求.

测试是发现,当零件的加工日期在同一天时,报表不能正确生成

比如把零件A的铣床计划加工日期调整到车床的同一天时,就不能正确生成


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/11/28 17:34:00 [只看该作者]

因为你之前完全没有提及这个情况啊,也没说这个情况要怎么处理, 2个值写在同一个单元格里吗?

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


加好友 发短信
等级:二尾狐 帖子:564 积分:4692 威望:0 精华:0 注册:2013/2/18 17:46:00
  发帖心情 Post By:2013/11/28 17:39:00 [只看该作者]

有这种可能存在,几道工序的零件加工可能会安排在同一天进行


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/11/28 17:40:00 [只看该作者]

那要怎么做? 塞在同一个单元格? 逗号区分?

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


加好友 发短信
等级:二尾狐 帖子:564 积分:4692 威望:0 精华:0 注册:2013/2/18 17:46:00
  发帖心情 Post By:2013/11/28 17:41:00 [只看该作者]

好的


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/11/28 17:55:00 [只看该作者]

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


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


加好友 发短信
等级:二尾狐 帖子:564 积分:4692 威望:0 精华:0 注册:2013/2/18 17:46:00
  发帖心情 Post By:2013/12/4 19:55:00 [只看该作者]

请教斑竹:下列代码中,加下划线部分是什么意思?

Dim dates As List(of String) = t.DataTable.GetValues("计划加工日期")
For c As Integer = 0 To Dates.count-1
    Sheet(0, c+2).Value = Dates(c).split(" ")(0)
Next


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


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

 回复39楼,取出分隔用空格以后的第一个字符


 回到顶部
总数 43 上一页 1 2 3 4 5 下一页