Foxtable(狐表)用户栏目专家坐堂 → 文本报表疑问


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

主题:文本报表疑问

帅哥,在线噢!
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109555 积分:557455 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/12/7 18:08:00 [显示全部帖子]

贴出你的代码

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

Dim dlg As New SaveFileDialog '定义一个新的SaveFileDialog
dlg.Filter= "txt文件|*.txt" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
    Dim ex As New Exporter
    ex.SourceTableName = "表A" '指定导出表
    ex.Format = "Fixed" '导出格式为固定宽度的文本文件
    ex.Fields = "编码,品名,数量,单价,金额" '指定导出字段
    ex.filepath = dlg.FileName.Replace(FileSys.GetName(dlg.FileName),"")  '指定目标文件
    ex.NewTableName = FileSys.GetName(dlg.FileName).Split(".")(0)
    ex.Header = False
    ex.Export() '开始导出
End If


 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109555 积分:557455 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/12/8 20:11:00 [显示全部帖子]

不要那么死板,替换为自己需要的

ex.SourceTableName = "
订单.明细" '指定导出表

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109555 积分:557455 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/12/9 9:47:00 [显示全部帖子]

ex.SourceTableName = "明细" '不能用关联表

 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109555 积分:557455 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/12/9 14:11:00 [显示全部帖子]

ex.Filter = "编号='" & tables("订单.明细").current("编号") & "'"

Filter 用法看5楼帮助

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109555 积分:557455 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/12/15 20:31:00 [显示全部帖子]


Tables("pcnhead").Current("print") = True


Dim dt As Table = Tables("pcnhead.pcndetail")
Dim nms() As String = {"SapCode","Validitystartdate"} '要导出的列名
Dim caps() As String = {"SapCode","Validitystartdate"} '对应的列标题
Dim Book As New XLS.Book '定义一个Excel工作簿
Dim Sheet As XLS.Sheet = Book.Sheets(0) '引用工作簿的第一个工作表
Dim st As XLS.Style = Book.NewStyle '日期列的显示格式
For c As Integer = 0 To nms.length -1
    Sheet(0, c).Value = caps(c) '指定列标题
Next
For r As Integer = 0 To dt.Rows.Count - 1 '填入数据
    For c As Integer = 0 To nms.length -1
        If dt.Cols(nms(c)).IsDate Then '如果是日期列
            Sheet(r +1, c).Value = format(dt.rows(r)(nms(c)),"1yyMMdd")
        Else
            Sheet(r +1, c).Value = dt.rows(r)(nms(c))
        End If
    Next
Next
Dim dlg As New SaveFileDialog '定义一个新的SaveFileDialog
dlg.Filter= "Excel文件|*.xls" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then
    Sheet.Rows.RemoveAt(0) '在删除最前面一行
    Book.Save(dlg.FileName)
    Dim Proc As New Process
    Proc.File = dlg.FileName
    Proc.Start()
End If


 回到顶部