以文本方式查看主题

-  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=53170)

--  作者:good131577
--  发布时间:2014/7/1 14:55:00
--  [求助]导入excel数据求助
我有个窗口 里面有导入excel文件按钮  点击按钮 打开对话框导入excel文件 代码如下:
Dim TableName As String = "当天配送会员窗口_Table1"
Dim dlg As New OpenFileDialog \'定义一个新的OpenFileDialog
dlg.Filter = "Excel文件|*.xls|Word文件|*.doc|Access文件|*.mdb"
If dlg.ShowDialog = DialogResult.OK Then \'如果用户单击了确定按钮
    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    Tables(TableName).StopRedraw()
    Dim dtb As New DataTableBuilder("统计")
    For n1 As Integer = 0 To Sheet.Cols.Count - 1
        dtb.AddDef(Sheet(0, n1).Text, Gettype(String), 32)
    Next
    Tables(TableName).DataSource = dtb.BuildDataSource
    For n As Integer = 1 To Sheet.Rows.Count - 1
        Dim bh As String = Sheet(n, 0).Text
        Dim dr As Row = Tables(TableName).AddNew()
        For m As Integer = 0 To Tables(TableName).Cols.Count - 1
            dr(Tables(TableName).Cols(m)) = Sheet(n, m).Value
        Next
    Next
End If
Tables(TableName).ResumeRedraw()
但是这个会把我之前的Table里面的数据清空掉  我是想导入excel  数据是追加在原来数据后面的 怎么实现??
图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

--  作者:有点甜
--  发布时间:2014/7/1 14:59:00
--  
Dim TableName As String = "当天配送会员窗口_Table1"
Dim dlg As New OpenFileDialog \'定义一个新的OpenFileDialog
dlg.Filter = "Excel文件|*.xls|Word文件|*.doc|Access文件|*.mdb"
If dlg.ShowDialog = DialogResult.OK Then \'如果用户单击了确定按钮
    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    Tables(TableName).StopRedraw()
    For n As Integer = 1 To Sheet.Rows.Count - 1
        Dim bh As String = Sheet(n, 0).Text
        Dim dr As Row = Tables(TableName).AddNew()
        For m As Integer = 0 To Tables(TableName).Cols.Count - 1
            dr(Tables(TableName).Cols(m)) = Sheet(n, m).Value
        Next
    Next
End If
Tables(TableName).ResumeRedraw()

--  作者:Bin
--  发布时间:2014/7/1 14:59:00
--  
这样的话,你窗口的表列名什么的要和Excel表格的对应

Dim TableName As String = "当天配送会员窗口_Table1"
Dim dlg As New OpenFileDialog \'定义一个新的OpenFileDialog
dlg.Filter = "Excel文件|*.xls|Word文件|*.doc|Access文件|*.mdb"
If dlg.ShowDialog = DialogResult.OK Then \'如果用户单击了确定按钮
    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    Tables(TableName).StopRedraw()
    For n As Integer = 1 To Sheet.Rows.Count - 1
        Dim bh As String = Sheet(n, 0).Text
        Dim dr As Row = Tables(TableName).AddNew()
        For m As Integer = 0 To Tables(TableName).Cols.Count - 1
            dr(Tables(TableName).Cols(m)) = Sheet(n, m).Value
        Next
    Next
End If
Tables(TableName).ResumeRedraw()

--  作者:good131577
--  发布时间:2014/7/1 16:00:00
--  可以了 非常感谢
可以了 非常感谢
--  作者:good131577
--  发布时间:2014/7/1 16:01:00
--  可以了 非常感谢
可以了 非常感谢