以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  关于导出到EXCEL表  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=82342)

--  作者:实话实说
--  发布时间:2016/3/16 10:58:00
--  关于导出到EXCEL表
有没有办法在EXCEL指定的表中进行追加导出,即在EXCEL表中原有数据的后面添加(不覆盖原有数据)
--  作者:大红袍
--  发布时间:2016/3/16 11:04:00
--  

 自己编写代码导出数据,确定sheet的最后一个位置即可。

 

http://www.foxtable.com/help/topics/1148.htm

 


--  作者:实话实说
--  发布时间:2016/3/16 11:33:00
--  

能在窗口1给个具体代码吗?

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:导出到excel.zip


--  作者:大红袍
--  发布时间:2016/3/16 12:47:00
--  

Dim dt As Table = Tables("订单")
Dim Book As New XLS.Book(ProjectPath & "Book1.xls") \'定义一个Excel工作簿
Dim Sheet As XLS.Sheet = Book.Sheets("sheet1") \'引用工作簿的第一个工作表
Dim count As Integer = sheet.Rows.Count
If count = 0 Then \'本来就没有数据,导出表头
    For c As Integer = 0 To dt.Cols.Count -1 \'添加列标题
        Sheet(0, c).Value = dt.Cols(c).Name
    Next
    count += 1
End If
For r As Integer = 0 To dt.Rows.Count - 1 \'填入数据
    For c As Integer = 0 To dt.Cols.Count -1
        Sheet(r + count, c).Value = dt.rows(r)(c)
    Next
Next
\'打开工作簿
Book.Save(ProjectPath & "Book1.xls")
Dim Proc As New Process
Proc.File = ProjectPath & "Book1.xls"
Proc.Start()


--  作者:实话实说
--  发布时间:2016/3/16 13:20:00
--  
很好,还有点问题,为了避免行重复,需要将_dientify一并导出,如果操作有重复行则提示
--  作者:实话实说
--  发布时间:2016/3/16 14:42:00
--  
大红袍老师,5楼的问题麻烦帮助一下
--  作者:大红袍
--  发布时间:2016/3/16 14:55:00
--  

Dim dt As Table = Tables("订单")
Dim Book As New XLS.Book(ProjectPath & "Book1.xls") \'定义一个Excel工作簿
Dim Sheet As XLS.Sheet = Book.Sheets("sheet1") \'引用工作簿的第一个工作表
Dim count As Integer = sheet.Rows.Count
For r As Integer = 0 To count \'填入数据
    If dt.FindRow("_Identify = " & val(sheet(r,0).value)) >= 0 Then
        msgbox("重复操作")
        count = -1
        Exit For
    End If
Next
If count <> -1 Then
    If count = 0 Then \'本来就没有数据,导出表头
        Sheet(0, 0).Value = "_Identify"
        For c As Integer = 0 To dt.Cols.Count -1 \'添加列标题
            Sheet(0, c+1).Value = dt.Cols(c).Name
        Next
        count += 1
    End If
    For r As Integer = 0 To dt.Rows.Count - 1 \'填入数据
        Sheet(r + count, 0).Value = dt.rows(r)("_Identify")
        For c As Integer = 0 To dt.Cols.Count -1
            Sheet(r + count, c+1).Value = dt.rows(r)(c)
        Next
    Next
    \'打开工作簿
    Book.Save(ProjectPath & "Book1.xls")
    Dim Proc As New Process
    Proc.File = ProjectPath & "Book1.xls"
    Proc.Start()
End If


--  作者:实话实说
--  发布时间:2016/3/16 15:04:00
--  
谢谢大红袍老师