以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]导出数据的代码,能否发给我一下,我的版本太低了,打不开软件  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=110754)

--  作者:hrw68529
--  发布时间:2017/12/8 17:17:00
--  [求助]导出数据的代码,能否发给我一下,我的版本太低了,打不开软件

图片点击可在新窗口打开查看此主题相关图片如下:截图00.jpg
图片点击可在新窗口打开查看

示例文件实现了查找符合条件的机构,时间段,可自行选择需要导出的列,对新手有用,特做示例文件分享供新手学习一下。
请能否把代码发给我学习下一下,谢谢

--  作者:有点甜
--  发布时间:2017/12/8 17:20:00
--  

 

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=108144

 


--  作者:hrw68529
--  发布时间:2017/12/8 17:21:00
--  
谢谢你


--  作者:hrw68529
--  发布时间:2017/12/8 17:29:00
--  
有点甜,如果想保存自己选择的一个文件夹中,并按“所属机构”名称作为文件名,怎么修改代码呢,谢谢你
--  作者:有点甜
--  发布时间:2017/12/8 17:32:00
--  

Dim dlg As New SaveFileDialog \'定义一个新的SaveFileDialog

dlg.Filter= "Excel文件|*.xls" \'设置筛选器
dlg.InitialDirectory = "d:\\"
dlg.FileName = "abc"

If dlg.ShowDialog = DialogResult.Ok Then
   
End If


--  作者:hrw68529
--  发布时间:2017/12/8 17:35:00
--  
非常感谢,再次谢谢,周未愉快
--  作者:hrw68529
--  发布时间:2017/12/9 14:55:00
--  
有点甜,这段代码不错,但不能按选择列的顺序导出,如foxtable数据表的列顺序为面试顺序、身份证号,我要导出的excel表的顺序为:身份证号、面试顺序,这个不能实现,并且,导出时,出现A列,不想要它,怎么修改呢,
如图:
图片点击可在新窗口打开查看此主题相关图片如下:截图01.jpg
图片点击可在新窗口打开查看
代码如下:Dim dlg As New SaveFileDialog \'定义一个新的SaveFileDialog
dlg.Filter= "Excel文件|*.xls" \'设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then
    Dim ccb As WinForm.CheckedComboBox = e.Form.Controls("CheckedComboBox1")
    Dim ws As String =  Tables("人员抽取_人员").getColVisibleWidth
    If ccb.Text > "" Then
        Dim lst As new List(of String)
        lst.AddRange(ccb.Text.Split(","))
        For Each c As Col In Tables("人员抽取_人员").Cols
            c.Visible = lst.Contains(c.Name)
        Next
    End If
    Dim flg As New  SaveExcelFlags
    flg.RowNumber = True
    flg.CellStyle = True
    flg.VisibleOnly = True
    Tables("人员抽取_人员").SaveExcel(dlg.FileName,"人员抽取_人员",flg)
    Tables("人员抽取_人员").SetColVisibleWidth(ws)
    Dim Proc As New Process
    Proc.File = dlg.FileName
    Proc.Start()
End If

--  作者:有点蓝
--  发布时间:2017/12/9 15:17:00
--  
Dim dlg As New SaveFileDialog \'定义一个新的SaveFileDialog
dlg.Filter= "Excel文件|*.xls" \'设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then
    Dim ccb As WinForm.CheckedComboBox = e.Form.Controls("CheckedComboBox1")
    Dim ws As String =  Tables("人员抽取_人员").getColVisibleWidth
    If ccb.Text > "" Then
        Dim lst As new List(of String)
        lst.AddRange(ccb.Text.Split(","))
        For Each c As Col In Tables("人员抽取_人员").Cols
            c.Visible = lst.Contains(c.Name)
        Next
    End If
    Dim flg As New  SaveExcelFlags
    flg.RowNumber = False
    flg.CellStyle = True
    flg.VisibleOnly = True
    Tables("人员抽取_人员").Cols("身份证号").Move(0)
    Tables("人员抽取_人员").SaveExcel(dlg.FileName,"人员抽取_人员",flg)
    Tables("人员抽取_人员").SetColVisibleWidth(ws)
    Dim Proc As New Process
    Proc.File = dlg.FileName
    Proc.Start()
End If

--  作者:hrw68529
--  发布时间:2017/12/9 15:30:00
--  
真棒,但我又想进一步,想按自己要求保存excel表,但怎么也保存不了,出现以下对话框,
代码:
Dim r As Row = Tables("人员抽取_人员").Current
Dim dlg As New SaveFileDialog \'定义一个新的SaveFileDialog
dlg.Filter= "Excel文件|*.xls" \'设置筛选器

dlg.InitialDirectory = ProjectPath & "Reports\\"
dlg.FileName = "数据导出" & "__" & r("面试时间") & "_"& r("面试场次") & "第"& r("电脑分组") & "电脑"

If dlg.ShowDialog = DialogResult.Ok Then
    Dim ccb As WinForm.CheckedComboBox = e.Form.Controls("CheckedComboBox1")
    Dim ws As String =  Tables("人员抽取_人员").getColVisibleWidth
    If ccb.Text > "" Then
        Dim lst As new List(of String)
        lst.AddRange(ccb.Text.Split(","))
        For Each c As Col In Tables("人员抽取_人员").Cols
            c.Visible = lst.Contains(c.Name)
        Next
    End If
    Dim flg As New  SaveExcelFlags
    flg.RowNumber = False
    flg.CellStyle = True
    flg.VisibleOnly = True
    Tables("人员抽取_人员").Cols("身份证号").Move(0)
    Tables("人员抽取_人员").SaveExcel(dlg.FileName,"人员抽取_人员",flg)
    Tables("人员抽取_人员").SetColVisibleWidth(ws)
    Dim Proc As New Process
    Proc.File = dlg.FileName
    Proc.Start()
End If

出现的错误是:
图片点击可在新窗口打开查看此主题相关图片如下:截图02.jpg
图片点击可在新窗口打开查看

--  作者:hrw68529
--  发布时间:2017/12/9 15:40:00
--  
有点甜,星期六打扰你,不好意思,不知道上述出现错误在哪?